Azure PowerShell とは
Azure PowerShell は、PowerShell を使用して Azure リソースを直接管理できる一連のコマンドレットです。 2018 年 12 月に、Az PowerShell モジュールが一般公開されました。 これは、Azure と対話するための推奨される PowerShell モジュールになりました。 Az PowerShell モジュールの詳細については、 Az PowerShell モジュールの概要に関するページを参照してください。
Azure PowerShell で破壊的変更警告メッセージを無効にする方法
Azure PowerShell で破壊的変更の警告メッセージを抑制するには、環境変数の SuppressAzurePowerShellBreakingChangeWarnings を trueに設定する必要があります。
Set-Item -Path Env:\SuppressAzurePowerShellBreakingChangeWarnings -Value $true
現在の PowerShell セッションで有効にするには、 Az または Az.Accounts PowerShell モジュールをインポートする前に、この環境変数を設定する必要があります。
Azure PowerShell で破壊的変更警告メッセージを無効にするその他の方法については、「 Azure PowerShell グローバル設定の構成」を参照してください。
Azure PowerShell で AzureRM 提供終了の警告メッセージを無効にする方法
Azure PowerShell で AzureRM 提供終了の警告メッセージを抑制するには、環境変数の SuppressAzureRmModulesRetiringWarning を trueに設定する必要があります。
Set-Item -Path Env:\SuppressAzureRmModulesRetiringWarning -Value $true
前の例の欠点の 1 つは、PowerShell プロファイルに追加しない限り、新しい PowerShell セッションごとにコマンドを実行する必要があることです。
環境変数を永続的に設定するには、次の例を使用することもできます。
[System.Environment]::SetEnvironmentVariable('SuppressAzureRmModulesRetiringWarning', 'true', [System.EnvironmentVariableTarget]::User)
Azure PowerShell で HTTP の最大再試行時間を確認するにはどうすればよいですか?
一般的な HTTP 応答 (応答状態コードが 429 を除く) の場合、Azure PowerShell では、 AZURE_PS_HTTP_MAX_RETRIES 環境変数で定義された値が使用されます。 最小値は 0 です。 指定しない場合、Azure PowerShell では SDK の既定値が使用されます。
[System.Environment]::SetEnvironmentVariable('AZURE_PS_HTTP_MAX_RETRIES ', 3, [System.EnvironmentVariableTarget]::User)
HTTP 応答状態コードが 429 の場合、Azure PowerShell では、 AZURE_PS_HTTP_MAX_RETRIES_FOR_429 環境変数で定義されている値が使用されます。 最小値は 1 です。 状態コード 429 の合計再試行時間は (AZURE_PS_HTTP_MAX_RETRIES + 1) * AZURE_PS_HTTP_MAX_RETRIES_FOR_429 - 1 です。 指定しない場合、Azure PowerShell では SDK の既定値が使用されます。
[System.Environment]::SetEnvironmentVariable('AZURE_PS_HTTP_MAX_RETRIES_FOR_429 ', 3, [System.EnvironmentVariableTarget]::User)
PowerShell で SecureString をプレーン テキストに変換するにはどうすればよいですか?
次のコード スニペットを使用して、SecureString ($secureString) をプレーン テキスト ($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)
}
手記: SecureString よりも安全性が低く、プレーンテキストを慎重に処理します。
Get-AzAccessToken から取得したアクセス トークンに、要求しなかったスコープが含まれているのはなぜですか?
これらは、Azure PowerShell の事前認証されたスコープです。 これは、トークンがそれらの API にアクセスできるという意味ではありません。 実際のアクセスは引き続きユーザー アカウントのアクセス許可に依存するため、この動作は想定され、安全です。