MSAL-basierte Azure CLI
Ab Version 2.30.0 verwendet die Azure CLI Microsoft Authentication Library (MSAL) als die zugrunde liegende Authentifizierungsbibliothek. Für MSAL wird der Azure Active Directory v2.0-Authentifizierungsfluss verwendet, um mehr Funktionalität bereitzustellen und die Sicherheit für den Tokencache zu erhöhen.
Warnung
Mit Version Azure CLI 2.30.0 werden BREAKING CHANGES eingeführt. Lesen Sie sich das Dokument vor der Installation sorgfältig durch.
Eingestellte Unterstützung für accessTokens.json
In früheren Versionen der Azure CLI wurden Azure AD Authentication Library-Token (ADAL) und Dienstprinzipaleinträge in ~/.azure/accessToken.json
gespeichert. Die neuesten Versionen der Azure CLI verwenden MSAL und generieren accessTokens.json
nicht mehr. Alle vorhandenen Workflows, die von accessTokens.json
abhängig sind, funktionieren nicht mehr.
Der MSAL-Tokencache und die Dienstprinzipaleinträge werden unter Windows als verschlüsselte Dateien und unter Linux und macOS als Klartextdateien gespeichert.
Wichtig
Stellen Sie bei Verwendung der Azure CLI in einer Pipeline wie Azure DevOps sicher, dass alle Tasks und Stages mindestens Version v2.30.0 der Azure CLI bei MSAL-basierter Azure CLI verwenden. Die Azure CLI 2.30.0 ist nicht abwärtskompatibel mit früheren Versionen und löst bei Verwendung mit älteren Versionen als 2.30.0 einen Fehler aus.
Zu berücksichtigende Alternativen
Alternativen, die Sie für die Stabilität in Betracht ziehen können:
Aufrufen von az account get-access-token
Sie können manuell in einem Terminal aufrufen az account get-access-token
oder einen Unterprozess verwenden, um ihn von einer anderen Programmiersprache aus aufzurufen. Standardmäßig gilt das zurückgegebene Zugriffstoken für Azure Resource Manager (ARM) und das Standardabonnement bzw. den Mandanten unter az account show
.
# get the active subscription
az account show --output table
# 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>"
Weitere Informationen zu den Zugriffstoken finden Sie unter Anmelden mit Azure CLI.
Verwenden von AzureCliCredential
Bei AzureCliCredential
handelt es sich um einen Anmeldeinformationstyp in allen vorhandenen Programmiersprachen-SDKs. Hierbei wird der Teilprozess zum Aufrufen von az account get-access-token
verwendet, um ein Zugriffstoken für das derzeit angemeldete Konto abzurufen.
Siehe auch
- MSAL
- Python
- AzureCliCredential-Klasse in Python
- .NET
- AzureCliCredential-Klasse in .NET
- Java
- AzureCliCredential-Klasse in Java