Azure PowerShell のグローバル設定を構成する
Azure PowerShell には、破壊的変更の警告メッセージを無効にするオプションなど、さまざまなグローバル設定が用意されています。 Az PowerShell モジュールのバージョン 9 より前は、これらのグローバル設定を構成するための一元的または詳細な方法はありませんでした。
集中管理構成
Az PowerShell モジュール バージョン 9 以降には、Azure PowerShell のグローバル設定の構成を管理するためのコマンドレットが含まれています。 これらの *-AzConfig
コマンドレットは、Az.Accounts PowerShell モジュールに含まれています。
詳細な設定
特定のスコープ内で有効な設定を適用できます。 Scope パラメーターの有効な値は次のとおりです。
Current User
: 設定を適用するときの既定のスコープ。Process
: この設定は現在の PowerShell セッションにのみ適用されます。Default
: 既定値が変更されていない読み取り専用スコープ。Environment
: 環境変数を使用して値が構成される読み取り専用スコープ。
スコープ以外にも、設定をすべての Az PowerShell モジュールに適用することも、1 つのモジュールにのみ適用することもできます。
AppliesTo パラメーターを使用すると、設定が適用される範囲を指定できます。 値 Az
は、Azure PowerShell の一部であるすべてのモジュールにその設定が適用されることを示します。
構成オプション
*-AzConfig
コマンドレットで設定できる構成オプションは多数あります。 これらの設定オプションの多くがこのセクションに示されています。 次のコマンドを実行して、*-AzConfig
コマンドレットで設定できる Azure PowerShell 構成オプションの完全な一覧を表示します。
Get-AzConfig | Format-List
アップグレード通知
Azure PowerShell バージョン アップグレードに関するツール内通知は、Az PowerShell モジュール バージョン 10.3.0 でリリースされた機能です。 新しいバージョンの Azure PowerShell が使用できるようになると、お使いの対話型 PowerShell セッション内にアップグレード通知が表示されます。
アップグレード通知が有効になっているかどうかを確認するには、次の例に示すように、Get-AzConfig
コマンドレットと CheckForUpgrade パラメーターを使用します。
Get-AzConfig -CheckForUpgrade
Azure PowerShell のアップグレード通知を有効にするには、次の例に示すように、Update-AzConfig
コマンドレットと CheckForUpgrade パラメーターを使用します。このパラメーターの値には $true
を指定します。
Update-AzConfig -CheckForUpgrade $true
アップグレード通知をオフにするには、次の例に示すように、Update-AzConfig
コマンドレットと CheckForUpgrade パラメーターを使用します。このパラメーターの値には $false
を指定します。
Update-AzConfig -CheckForUpgrade $false
既定のサブスクリプション
既定では、Az PowerShell モジュール バージョン 12.0.0 以降では、複数のサブスクリプションへのアクセス権を持っている場合、サインインする Azure サブスクリプションを選択するように求められます。
対話形式でサインインするたびにサブスクリプションを選択するように求められるのを回避するには、次の例に示すように、Update-AzConfig
コマンドレットと DefaultSubscriptionForLogin パラメーターを使用して、既定のサブスクリプションを設定します。
Update-AzConfig -DefaultSubscriptionForLogin <Subscription ID or Name>
Note
既定のコンテキストのサブスクリプションと混同されないように、DefaultSubscriptionForLogin 構成は、Azure への認証時にのみ有効になります。
インスタンスの検出
インスタンスの検出を無効にする設定は、プライベート クラウドや Azure Stack 環境など、メタデータ エンドポイントにアクセスできない場合を考慮して設計されています。 インスタンスの検出では、https://login.microsoft.com/
から機関のメタデータを取得し、機関を検証します。 この設定を有効にすると (true
に設定すると)、インスタンスの検出と機関の検証が両方とも無効になります。 そのため、構成した機関のホストが有効で信頼できることを確認することが重要です。
インスタンスの検出と機関の検証を両方とも無効にするには、この設定を有効にします (true
に設定します)。
Update-AzConfig -DisableInstanceDiscovery $true
破壊的変更の警告メッセージ
すべての Az モジュールでコマンドレットの破壊的変更の警告メッセージを無効にするには、次の例に示すように、DisplayBreakingChangeWarning
パラメーターを指定して Update-AzConfig
コマンドレットを使用します。
Update-AzConfig -DisplayBreakingChangeWarning $false
Az.Compute モジュールのコマンドレット専用の破壊的変更の警告メッセージを無効にするには、次の例に示すように、DisplayBreakingChangeWarning と AppliesTo の両方のパラメーターを指定して Update-AzConfig
コマンドレットを使用します。
Update-AzConfig -DisplayBreakingChangeWarning $false -AppliesTo Az.Compute
このシナリオでは、Az.Compute を除くすべての Az PowerShell モジュールのコマンドレットに対して、破壊的変更の警告メッセージがアクティブなままです。
Azure リージョンの特定
Azure のお客様は、複数の異なるリージョンにリソースをデプロイすることを選択できます。 場合によっては、同じサービスを提供する近隣のリージョンを選択すると、コストを削減できることもあります。 近隣のリージョンが特定されると、今後のデプロイ用に選択するリージョンがメッセージに表示されます。
リージョンの推奨メッセージを無効にするには、次の例に示すように、DisplayRegionIdentified パラメーターを指定して Update-AzConfig
コマンドレットを使用します。
Update-AzConfig -DisplayRegionIdentified $false
Azure リージョンの詳細については、適切な Azure リージョンの選択に関するページを参照してください。
シークレットの表示に関する警告
Azure PowerShell では、バージョン 12.0.0 以降、コマンドの出力内で潜在的な機密を識別した際に、機密情報の保護に役立つ警告メッセージがデフォルトで表示されるようになりました。
次の例では、Update-AzConfig
コマンドレットを使用して警告メッセージを無効にします。
Update-AzConfig -DisplaySecretsWarning $false
調査
Azure PowerShell を使用しているときに、ご使用体験についてのアンケートに協力を求められる場合があります。 このデータで得られる分析情報は貴重なものですが、アンケートへの入力を求められることを好まないユーザーが存在することも理解しています。
次の例に示すように、Update-AzConfig
コマンドレットを使用してアンケートへの協力を求めるメッセージを無効にすることができます。
Update-AzConfig -DisplaySurveyMessage $false
データ コレクション
既定では、Azure PowerShell コマンドレットは、カスタマー エクスペリエンスを向上させるために、利用統計情報を Microsoft に送信します。 詳細については、Microsoft のプライバシーに関する声明 (aka.ms/privacy) を参照してください。
Update-AzConfig -EnableDataCollection $false
エラー レコード
既定では、Azure PowerShell エラー レコードは $HOME/.Azure/ErrorRecords
に書き込まれます。
永続的なエラー レコードを無効にするには、次の例に示すように、EnableErrorRecordsPersistence パラメーターを指定して Update-AzConfig
コマンドレットを使用します。
Update-AzConfig -EnableErrorRecordsPersistence $false
Web アカウント マネージャー (WAM)
Az PowerShell モジュール バージョン 12.0.0 以降では、Windows システムでは Web アカウント マネージャー (WAM) が使用され、Linux および macOS システムでは既定でブラウザーベースのサインインが使用されます。
Az 12.0.0 以上が搭載された Windows 10 以降または Windows Server 2019 以降でブラウザーベースのサインインを使用するには、Azure PowerShell での WAM の使用を無効にする必要があります。 次のコマンドを使用して WAM を無効にし、Az 12.0.0 より前における既定値であるブラウザーベースのログインに戻します。
Update-AzConfig -EnableLoginByWam $false
新しいログイン エクスペリエンス
Az PowerShell モジュール バージョン 12.0.0 以降では、複数のサブスクリプションへのアクセス権を持っている場合、サインインに使用する Azure サブスクリプションを選択するように求められます。
新しいログイン エクスペリエンスが無効になっていて、複数のサブスクリプションにアクセスできる場合は、Connect-AzAccount
でサブスクリプションを指定しない限り、Azure が返す最初のサブスクリプションにサインインされます。 既定では、このサブスクリプションに対してコマンドが実行されます。 返される最初のサブスクリプションが運用環境である場合などには、この動作は危険な場合があります。
新しいログイン エクスペリエンスを無効にするには、次の例に示すように Update-AzConfig
コマンドレットを使用します。
Update-AzConfig -LoginExperienceV2 Off
設定のレプリケート
ある環境から別の環境に設定をレプリケートするには、Export-AzConfig
コマンドレットを使用して設定を JSON ファイルにエクスポートします。
Export-AzConfig -Path $HOME\AzConfig.json
設定をインポートするには、Import-AzConfig
コマンドレットを使用し、以前にエクスポートした JSON ファイルを参照します。
Import-AzConfig -Path $HOME\AzConfig.json
構成のクリア
1 つ以上の Azure PowerShell グローバル設定の構成設定を既定値にリセットするには、Clear-AzConfig
コマンドレットを使用します。 次の例では、DefaultSubscriptionForLogin 設定がクリアされています。
Clear-AzConfig -DefaultSubscriptionForLogin
Azure PowerShell