使用 Azure CLI 向 Azure 進行驗證

Azure CLI 支援數種驗證方法。 限制使用案例的登入許可權,以保護您的 Azure 資源安全。

使用 Azure CLI 登入 Azure

使用 Azure CLI 時有五個驗證選項:

驗證方法 優勢
Azure Cloud Shell Azure Cloud Shell 會自動將您登入,而且是最簡單的開始使用方式。
以互動方式登入 這是學習 Azure CLI 命令並在本機執行 Azure CLI 時的絕佳選項。 使用 az login 命令透過瀏覽器登入
以互動方式登入 (預覽) 此選項會提示您在使用 az login 命令時挑選您的訂用帳戶。
使用服務主體登入 當您撰寫文本時,建議使用服務主體。 您只授與服務主體保護自動化所需的適當許可權。
使用受控識別登入 開發人員常見的挑戰是管理用來保護服務間安全通訊的祕密、認證、憑證和金鑰。 使用受控識別可免除您管理這些認證的需求。
使用 Web 帳戶管理員登入 (WAM) WAM 是作為驗證代理人的 Windows 10+ 元件。 WAM 提供增強的安全性和增強功能隨附於 Windows。

尋找或變更您目前的訂用帳戶

登入之後,CLI 命令會針對您的預設訂用帳戶執行。 如果您有多個訂用帳戶,請使用 變更預設訂用 az account set --subscription帳戶。

az account set --subscription "<subscription ID or name>"

另一個選項是使用 Azure CLI 2.59.0 的驗證預覽。 驗證預覽會在登入時提供租用戶和訂用帳戶清單,系統會提示您選取預設訂用帳戶。

若要深入瞭解如何管理 Azure 訂用帳戶,請參閱 如何使用 Azure CLI 管理 Azure 訂用帳戶。

重新整理權杖

當您使用使用者帳戶登入時,Azure CLI 會產生並儲存驗證重新整理令牌。 由於存取令牌在短時間內有效,因此會在發出存取令牌的同時發出重新整理令牌。 用戶端應用程式可以接著交換此重新整理權杖以在需要時取得新的存取權杖。 如需令牌存留期和到期的詳細資訊,請參閱重新整理 Microsoft 身分識別平台 中的令牌。

使用 az account get-access-token 命令來擷取存取令牌:

# get access token for the active subscription
az account get-access-token

# get access token for a specific subscription
az account get-access-token --subscription "<subscription ID or name>"

以下是有關存取令牌到期日的其他一些資訊:

  • 到期日會以 MSAL 型 Azure CLI 支援的格式進行更新。
  • 從 Azure CLI 2.54.0 開始, az account get-access-token 傳回 expires_on 屬性與 expiresOn 令牌到期時間的屬性。
  • 屬性 expires_on 代表可攜式作業系統介面 (POSIX) 時間戳,而 expiresOn 屬性則代表本機日期時間。
  • 屬性 expiresOn 不會在日光節約時間結束時表示「折疊」。 這可能會導致採用日光節約時間的國家/地區發生問題。 如需有關「折疊」的詳細資訊,請參閱 PEP 495 – 當地時間釐清。
  • 我們建議讓下游應用程式使用 expires_on 屬性,因為它使用通用時間代碼 (UTC)。

範例輸出︰

{
  "accessToken": "...",
  "expiresOn": "2023-10-31 21:59:10.000000",
  "expires_on": 1698760750,
  "subscription": "...",
  "tenant": "...",
  "tokenType": "Bearer"
}

注意

根據您的登入方法,您的租使用者可能會有條件式存取原則,以限制您對特定資源的存取。

另請參閱