Azure CLI basé sur MSAL
Dès la version 2.30.0, Azure CLI utilise MSAL (Microsoft Authentication Library) comme bibliothèque d’authentification sous-jacente. MSAL utilise le flux d’authentification Azure Active Directory v2.0 pour fournir plus de fonctionnalités et augmenter la sécurité du cache de jeton.
Avertissement
Des CHANGEMENTS CASSANTS sont introduits dans Azure CLI 2.30.0. Lisez attentivement le document avant l’installation.
Dépréciation de accessTokens.json
Les versions précédentes d’Azure CLI ont enregistré des jetons de la bibliothèque Azure AD Authentication (ADAL) et des entrées du principal de service dans ~/.azure/accessToken.json
. Les dernières versions d’Azure CLI utilisent MSAL et ne génèrent plus accessTokens.json
. Les workflows existants qui dépendent de accessTokens.json
ne fonctionnent plus.
Le cache du jeton MSAL et les entrées du principal de service sont enregistrés sous forme de fichiers chiffrés sur Windows et de fichiers texte en clair sur Linux et macOS.
Important
Quand vous utilisez Azure CLI dans un pipeline, comme Azure DevOps, vérifiez que toutes les tâches et étapes utilisent des versions d’Azure CLI supérieures à v2.30.0 pour Azure CLI basé sur MSAL. Azure CLI 2.30.0 n’offre pas une compatibilité descendante avec les versions antérieures et génère une erreur lors de l’utilisation de ces dernières.
Alternatives à prendre en compte
Alternatives à envisager pour la stabilité :
Appel de az account get-access-token
Vous pouvez appeler az account get-access-token
manuellement un terminal ou utiliser un sous-processus pour l’appeler à partir d’un autre langage de programmation. Par défaut, le jeton d’accès retourné est destiné à Azure Resource Manager (ARM) et à l’abonnement/au locataire par défaut indiqué dans 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>"
Pour en savoir plus sur les jetons d’accès, consultez Se connecter avec Azure CLI.
Utilisation de AzureCliCredential
AzureCliCredential
est un type d’informations d’identification dans tous les kits SDK de langage existants. Il utilise un sous-processus afin d’appeler az account get-access-token
pour obtenir un jeton d’accès pour le compte actuellement connecté.