Często zadawane pytania dotyczące programu Azure PowerShell

Co to jest program Azure PowerShell?

Azure PowerShell to zestaw poleceń cmdlet, które umożliwiają bezpośrednie zarządzanie zasobami platformy Azure za pomocą programu PowerShell. W grudniu 2018 r. moduł Az programu PowerShell stał się ogólnie dostępny. Jest to teraz zalecany moduł programu PowerShell do interakcji z platformą Azure. Aby dowiedzieć się więcej na temat modułu Az programu PowerShell, zobacz Wprowadzenie do modułu Az programu PowerShell.

Jak wyłączyć komunikaty ostrzegawcze dotyczące zmian powodujących niezgodność w programie Azure PowerShell?

Aby pominąć komunikaty ostrzegawcze dotyczące zmiany powodującej niezgodność w programie Azure PowerShell, należy ustawić zmienną środowiskową SuppressAzurePowerShellBreakingChangeWarnings na true.

Set-Item -Path Env:\SuppressAzurePowerShellBreakingChangeWarnings -Value $true

Ta zmienna środowiskowa musi zostać ustawiona przed zaimportowaniem modułu Az lub Az.Accounts programu PowerShell, aby zaczęły obowiązywać w bieżącej sesji programu PowerShell.

Aby uzyskać dodatkowe metody wyłączania komunikatów ostrzegawczych o zmianach powodujących niezgodność w programie Azure PowerShell, zobacz Konfigurowanie ustawień globalnych programu Azure PowerShell.

Jak wyłączyć komunikat ostrzegawczy o wycofaniu modułu AzureRM w programie Azure PowerShell?

Aby pominąć komunikat ostrzegawczy o wycofaniu modułu AzureRM w programie Azure PowerShell, należy ustawić zmienną środowiskową SuppressAzureRmModulesRetiringWarning na wartość true.

Set-Item -Path Env:\SuppressAzureRmModulesRetiringWarning -Value $true

Jedną z wad poprzedniego przykładu jest uruchomienie polecenia dla każdej nowej sesji programu PowerShell, chyba że dodasz je do profilu programu PowerShell.

Aby trwale ustawić zmienną środowiskową, możesz również użyć poniższego przykładu.

[System.Environment]::SetEnvironmentVariable('SuppressAzureRmModulesRetiringWarning', 'true', [System.EnvironmentVariableTarget]::User)

Jak określić maksymalny czas ponawiania prób HTTP w programie Azure PowerShell?

W przypadku ogólnej odpowiedzi HTTP (z wyjątkiem kodu stanu odpowiedzi 429) program Azure PowerShell używa wartości zdefiniowanej w zmiennej środowiskowej AZURE_PS_HTTP_MAX_RETRIES. Jego minimalna wartość to 0. Jeśli nie zostanie określony, program Azure PowerShell używa wartości domyślnej zestawu SDK.

[System.Environment]::SetEnvironmentVariable('AZURE_PS_HTTP_MAX_RETRIES ', 3, [System.EnvironmentVariableTarget]::User)

Jeśli kod stanu odpowiedzi HTTP to 429, program Azure PowerShell używa wartości zdefiniowanej w zmiennej środowiskowej AZURE_PS_HTTP_MAX_RETRIES_FOR_429. Jego minimalna wartość to 1. Łączna liczba ponownych prób kodu stanu 429 to (AZURE_PS_HTTP_MAX_RETRIES + 1) * AZURE_PS_HTTP_MAX_RETRIES_FOR_429 - 1. Jeśli nie zostanie określony, program Azure PowerShell używa wartości domyślnej zestawu SDK.

[System.Environment]::SetEnvironmentVariable('AZURE_PS_HTTP_MAX_RETRIES_FOR_429 ', 3, [System.EnvironmentVariableTarget]::User)

Jak przekonwertować ciąg SecureString na zwykły tekst w programie PowerShell?

Możesz użyć następującego fragmentu kodu, aby przekonwertować element SecureString ($secureString) na zwykły tekst ($plainText):

$ssPtr = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($secureString)
try {
    $plaintext = [System.Runtime.InteropServices.Marshal]::PtrToStringBSTR($ssPtr)
    # Perform operations with the contents of $plaintext in this section.
} finally {
    # The following line ensures that sensitive data is not left in memory.
    $plainText = [System.Runtime.InteropServices.Marshal]::ZeroFreeBSTR($ssPtr)
}

Uwaga: Ostrożnie obsłuż zwykły tekst, ponieważ jest mniej bezpieczny niż SecureString.