共用方式為


設定 Azure PowerShell 全域設定

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

集中式組態

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

細微設定

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

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

除了範圍之外,您還可以將設定套用至所有 Az PowerShell 模組,或只套用單一模組。 使用 AppliesTo 參數,您可以指定要套用設定的範圍。 值 Az 指出設定會套用至屬於 Azure PowerShell 的所有模組。

組態選項

您可以使用 *-AzConfig Cmdlet 來設定許多組態選項。 本節顯示許多這些組態選項。 執行下列命令以查看您可以使用 *-AzConfig Cmdlet 設定的 Azure PowerShell 組態選項完整清單。

Get-AzConfig | Format-List

升級通知

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

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

Get-AzConfig -CheckForUpgrade

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

Update-AzConfig -CheckForUpgrade $true

若要關閉升級通知,請使用 Update-AzConfig cmdlet 搭配 CheckForUpgrade 參數和 $false 的值,如下列範例所示。

Update-AzConfig -CheckForUpgrade $false

默認訂用帳戶

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

若要防止每次以互動方式登入時選取訂用帳戶,請使用 Update-AzConfig Cmdlet 搭配 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 cmdlet 並搭配 DisplayBreakingChangeWarning 參數,如下列範例所示:

Update-AzConfig -DisplayBreakingChangeWarning $false

若要停用 Az.Compute 模組中 Cmdlet 的中斷性變更警告訊息,請使用 Update-AzConfig Cmdlet 搭配 DisplayBreakingChangeWarningAppliesTo 参数,如下列範例所示:

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

在此案例中,除了 Az.Compute之外,所有 Az PowerShell 模組中的重大變更警告信息仍然有效。

Azure 區域識別

Azure 客戶可以選擇在數個不同的區域中部署資源。 有時候,客戶可以藉由選取提供相同服務的鄰近區域來降低成本。 如果識別出附近的區域,訊息會顯示區域以選擇未來部署。

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

Update-AzConfig -DisplayRegionIdentified $false

如需 Azure 區域的詳細資訊,請參閱 選擇正確的 Azure 區域。

顯示秘密警告

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

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

Update-AzConfig -DisplaySecretsWarning $false

調查

使用 Azure PowerShell 時,您可能會受邀參與問卷,以告訴我們您的體驗。 雖然我們感謝這項數據所提供的見解,但我們也理解並不是所有人都希望被邀請填寫問卷。

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

Update-AzConfig -DisplaySurveyMessage $false

數據採集

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

Update-AzConfig -EnableDataCollection $false

錯誤記錄

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

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

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