共用方式為


設定 Azure PowerShell 全域設定

Azure PowerShell 提供各種全域設定,例如停用重大變更警告訊息的選項。 在 Az PowerShell 模組第 9 版之前,沒有集中式或詳細的方法來設定這些全域設定。

集中式配置

Az PowerShell 模組第 9 版和更新版本包含 Cmdlet,可管理 Azure PowerShell 全域設定的組態。 這些 *-AzConfig Cmdlet 是 Az.Accounts PowerShell 模組的一部分:

精細設定

您可以套用在特定範圍內有效的設定。 Scope 參數的有效值為:

  • Current User:套用設定時的預設範圍。
  • Process:此設定只會套用至目前的 PowerShell 會話。
  • Default:預設值未變更的唯讀範圍。
  • Environment:唯讀範圍,其中值是透過環境變數設定的。

除了範圍之外,您還可以將設定套用至所有 Az PowerShell 模組,或僅套用至單一模組。 使用 AppliesTo 參數,您可以指定要套用設定的寬度。 此值 Az 表示設定會套用至 Azure PowerShell 中的所有模組。

設定選項

您可以使用 Cmdlet 設定 *-AzConfig 許多設定選項。 本節顯示了其中許多配置選項。 執行下列命令,以查看您可以使用 Cmdlet 設定 *-AzConfig 的 Azure PowerShell 設定選項的完整清單。

Get-AzConfig | Format-List

升級通知

Azure PowerShell 版本升級的工具內通知是 Az PowerShell 模組 10.3.0 版中發行的功能。 當有新版本的 Azure PowerShell 可用時,升級通知會顯示在您的互動式 PowerShell 工作階段中。

若要判斷是否已啟用升級通知,請搭配 Get-AzConfigCheckForUpgrade 參數使用 Cmdlet,如下列範例所示。

Get-AzConfig -CheckForUpgrade

若要啟用 Azure PowerShell 的升級通知,請搭配 Update-AzConfigCheckForUpgrade 參數及其 $true 值使用 Cmdlet,如下列範例所示。

Update-AzConfig -CheckForUpgrade $true

若要關閉升級通知,請搭配 Update-AzConfigCheckForUpgrade 參數及其 $false 值使用 Cmdlet,如下列範例所示。

Update-AzConfig -CheckForUpgrade $false

預設訂閱

根據預設,從 Az PowerShell 模組 12.0.0 版開始,如果您有權存取多個訂用帳戶,系統會提示您選取要登入的 Azure 訂用帳戶。

若要避免每次以互動方式登入時系統提示您選取訂用帳戶,請使用 Update-AzConfigCmdlet 搭配 DefaultSubscriptionForLogin 參數來設定您的預設訂用帳戶,如下列範例所示。

Update-AzConfig -DefaultSubscriptionForLogin <Subscription ID or Name>

備註

不要與 預設內容的訂用帳戶混淆, DefaultSubscriptionForLogin 設定只有在向 Azure 進行驗證時才會生效。

執行個體探索

停用執行個體探索設定是針對中繼資料端點無法存取的情況所設計,例如在私人雲端或 Azure Stack 環境中。 實例探索涉及從中 https://login.microsoft.com/ 擷取授權單位中繼資料以驗證授權單位。 透過啟用此設定 (將它設為 true),您可以同時停用實例探索及權限驗證。 因此,必須確保配置的授權主機有效且值得信賴。

若要同時停用實例探索及權限驗證,請啟用此設定 (將它設為 true)。

Update-AzConfig -DisableInstanceDiscovery $true

重大變更警告訊息

若要停用所有 Az 模組中 Cmdlet 的重大變更警告訊息,請搭配 Update-AzConfig 參數使用 DisplayBreakingChangeWarning Cmdlet,如下列範例所示:

Update-AzConfig -DisplayBreakingChangeWarning $false

若要停用 Az.Compute 模組中 Cmdlet 的重大變更警告訊息,請搭配 Update-AzConfigDisplayBreakingChangeWarningAppliesTo 參數使用 Cmdlet,如下列範例所示:

Update-AzConfig -DisplayBreakingChangeWarning $false -AppliesTo Az.Compute

在此案例中,重大變更警告訊息會針對 Az.Compute 以外的所有 Az PowerShell 模組中的 Cmdlet 保持作用中。

Azure 區域識別

Azure 客戶可以選擇在數個不同的區域中部署資源。 有時,客戶可以透過選擇提供相同服務的附近地區來降低成本。 如果識別出附近的區域,則會顯示一則訊息,以選擇用於未來部署的區域。

若要停用區域建議訊息,請搭配 Update-AzConfigDisplayRegionIdentified 參數使用 Cmdlet,如下列範例所示。

Update-AzConfig -DisplayRegionIdentified $false

如需 Azure 區域的詳細資訊,請參閱 選擇適合您的 Azure 區域

顯示秘密警告

Azure PowerShell 預設會從 12.0.0 版開始顯示警告訊息,以協助您在識別命令輸出中的潛在秘密時保護敏感性資訊。

在下列範例中, Update-AzConfig Cmdlet 可用來停用警告訊息。

Update-AzConfig -DisplaySecretsWarning $false

調查

使用 Azure PowerShell 時,您可能會受邀參與問卷,告訴我們您的體驗。 雖然我們很欣賞這些數據提供的見解,但我們知道並不是每個人都希望被提示完成調查。

您可以使用 Cmdlet 停用 Update-AzConfig 提示參與問卷,如下列範例所示。

Update-AzConfig -DisplaySurveyMessage $false

數據採集

根據預設,Azure PowerShell Cmdlet 會將遙測資料傳送至 Microsoft,以改善客戶體驗。 如需詳細資訊,請參閱我們的隱私權聲明: aka.ms/privacy

Update-AzConfig -EnableDataCollection $false

錯誤記錄

根據預設,Azure PowerShell 錯誤記錄會寫入 $HOME/.Azure/ErrorRecords

若要停用持續性錯誤記錄,請搭配 Update-AzConfigEnableErrorRecordsPersistence 參數使用 Cmdlet,如下列範例所示。

Update-AzConfig -EnableErrorRecordsPersistence $false

網路帳戶管理員 (WAM)

Az PowerShell 模組 12.0.0 版開始,Windows 系統會使用 Web 帳戶管理員 (WAM),而 Linux 和 macOS 系統預設會使用瀏覽器型登入。

若要在 Windows 10 和更新版本或 Windows Server 2019 和更新版本搭配 Az 12.0.0 和更新版本上使用瀏覽器型登入,您必須停用 WAM 才能與 Azure PowerShell 搭配使用。 使用下列命令來停用 WAM 並返回瀏覽器型登入,這是 Az 12.0.0 之前的預設值。

Update-AzConfig -EnableLoginByWam $false

新的登入體驗

Az PowerShell 模組 12.0.0 版開始,如果您有權存取多個訂用帳戶,系統會提示您選取要登入的 Azure 訂用帳戶。

當新的登入體驗已停用,且您可以存取多個訂用帳戶時,除非您使用 指定訂 Connect-AzAccount用帳戶,否則您會登入 Azure 傳回的第一個訂用帳戶。 依預設,命令會針對此訂用帳戶執行。 此行為可能很危險,例如,如果傳回的第一個訂用帳戶是生產環境。

若要停用新的登入體驗,請使用 Update-AzConfig Cmdlet,如下列範例所示。

Update-AzConfig -LoginExperienceV2 Off

複寫設定

若要將設定從一個環境複寫到另一個環境,您可以使用 Export-AzConfig Cmdlet 將設定匯出至 JSON 檔案。

Export-AzConfig -Path $HOME\AzConfig.json

若要匯入您的設定,請使用 Import-AzConfig Cmdlet 並參考先前匯出的 JSON 檔案。

Import-AzConfig -Path $HOME\AzConfig.json

清除配置

若要將一或多個 Azure PowerShell 全域設定的組態設定重設為預設值,請使用 Clear-AzConfig Cmdlet。 在下列範例中,會清除 DefaultSubscriptionForLogin 設定。

Clear-AzConfig -DefaultSubscriptionForLogin