Se connecter de façon interactive avec Azure CLI
Les connexions interactives à Azure offrent une expérience utilisateur plus intuitive et flexible. La connexion interactive avec Azure CLI permet aux utilisateurs de s’authentifier directement auprès d’Azure via la commande az login , ce qui est utile pour les tâches de gestion ad hoc et pour les environnements nécessitant une connexion manuelle, comme les clients disposant d’une authentification multifacteur (MFA). Cette méthode simplifie l’accès aux tests de script, à l’apprentissage et à la gestion à la volée sans avoir à préconfigurer les principaux de service ou d’autres méthodes d’authentification non interactives.
Prérequis
Connexion interactive
Pour vous connecter de manière interactive, utilisez la commande az login . À compter d’Azure CLI version 2.61.0, Azure CLI utilise le Gestionnaire de comptes web (WAM) sur Windows et une connexion basée sur un navigateur sur Linux et macOS par défaut.
az login
Sélecteur d’abonnement
À compter d’Azure CLI version 2.61.0, si vous avez accès à plusieurs abonnements, vous êtes invité à sélectionner un abonnement Azure au moment de la connexion, comme illustré dans l’exemple suivant.
Retrieving subscriptions for the selection...
[Tenant and subscription selection]
No Subscription name Subscription ID Tenant name
---- ------------------------------------ ---------------------------------------- --------------
[1] Facility Services Subscription 00000000-0000-0000-0000-000000000000 Contoso
[2] Finance Department Subscription 00000000-0000-0000-0000-000000000000 Contoso
[3] Human Resources Subscription 00000000-0000-0000-0000-000000000000 Contoso
[4] * Information Technology Subscription 00000000-0000-0000-0000-000000000000 Contoso
The default is marked with an *; the default tenant is 'Contoso' and subscription is
'Information Technology Subscription' (00000000-0000-0000-0000-000000000000).
Select a subscription and tenant (Type a number or Enter for no changes): 2
Tenant: Contoso
Subscription: Finance Department Subscription (00000000-0000-0000-0000-000000000000)
[Announcements]
With the new Azure CLI login experience, you can select the subscription you want to use more easily.
Learn more about it and its configuration at https://go.microsoft.com/fwlink/?linkid=2271236
If you encounter any problem, please open an issue at https://aka.ms/azclibug
La prochaine fois que vous vous connectez, le locataire et l’abonnement précédemment sélectionnés sont marqués comme étant la valeur par défaut avec un astérisque (*
) en regard de son nombre. Cela vous permet d’appuyer sur Entrée pour sélectionner l’abonnement par défaut.
Les commandes s’exécutent par défaut sur l’abonnement sélectionné. Vous pouvez toujours utiliser az account set
pour modifier votre abonnement à partir d’une ligne de commande à tout moment. Pour plus d’informations, consultez Comment gérer les abonnements Azure avec Azure CLI.
Voici quelques instructions sur le sélecteur d’abonnement à garder à l’esprit :
- Le sélecteur d’abonnement est disponible uniquement dans Windows, Linux ou macOS 64 bits.
- Le sélecteur d’abonnement est disponible uniquement lors de l’utilisation de la
az login
commande. - Vous n’êtes pas invité à sélectionner un abonnement lorsque vous vous connectez avec un principal de service ou une identité managée.
Si vous souhaitez désactiver la fonctionnalité de sélecteur d’abonnement, définissez la propriété de configuration core.login_experience_v2 sur off
.
az config set core.login_experience_v2=off
az login
Se connecter avec le Gestionnaire de comptes web (WAM) sur Windows
À compter d’Azure CLI version 2.61.0, le Gestionnaire de comptes web (WAM) est désormais la méthode d’authentification par défaut sur Windows. WAM est un composant Windows 10+ qui joue le rôle de répartiteur d’authentification. (Un répartiteur d’authentification est une application qui s’exécute sur l’ordinateur d’un utilisateur qui gère les liaisons d’authentification et la maintenance des jetons pour les comptes connectés.)
L’utilisation de WAM présente plusieurs avantages :
- Sécurité renforcée. Consultez Accès conditionnel : Protection des jetons (préversion).
- Prise en charge de Windows Hello, des stratégies d’accès conditionnel et des clés FIDO.
- Authentification unique simplifiée.
- Des correctifs de bogues et d’autres améliorations sont fournis avec Windows.
Si vous rencontrez un problème et que vous souhaitez revenir à la méthode d’authentification basée sur le navigateur précédente, définissez la propriété false
de configuration core.enable_broker_on_windows sur .
az account clear
az config set core.enable_broker_on_windows=false
az login
Un WAM est disponible sur Windows 10 et versions ultérieures et sur Windows Server 2019 et versions ultérieures.
Se connecter avec un navigateur
Azure CLI est défini par défaut sur une méthode d’authentification basée sur un navigateur quand l’une des valeurs suivantes est vraie :
- Le système d’exploitation (OS) est Mac ou Linux, ou le système d’exploitation Windows est antérieur à Windows 10 ou Windows Server 2019.
- La
core.enable_broker_on_windows
propriété de configuration est définie surfalse
.
Procédez comme suit pour vous connecter avec un navigateur :
Exécutez la commande
az login
.az login
Si Azure CLI peut ouvrir votre navigateur par défaut, il lance le flux de code d’autorisation et ouvre le navigateur par défaut pour charger une page de connexion Azure.
Sinon, il lance le flux de code de l’appareil et vous demande d’ouvrir une page de navigateur à https://aka.ms/devicelogin. Entrez ensuite le code affiché dans votre terminal.
Si aucun navigateur web n’est disponible ou si l’ouverture du navigateur web échoue, vous devrez peut-être forcer le flux de code d’appareil avec la commande az login --use-device-code.
Dans le navigateur, connectez-vous avec les informations d’identification de votre compte.
Connectez-vous à l’aide de vos informations d’identification sur la ligne de commande
Fournissez vos informations d’identification d’utilisateur Azure dans la ligne de commande. Utilisez uniquement cette méthode d’authentification pour apprendre les commandes Azure CLI. Les applications de production doivent utiliser un principal de service ou une identité managée.
Cette approche ne fonctionne pas avec les comptes Microsoft ou les comptes pour lesquels l’authentification à deux facteurs est activée. Vous recevez un message indiquant qu’une authentification interactive est nécessaire.
az login --user <username> --password <password>
Important
Si vous souhaitez éviter l’affichage de votre mot de passe sur la console et que vous utilisez az login
de manière interactive, utilisez la commande read -s
sous bash
.
read -sp "Azure password: " AZ_PASS && echo && az login -u <username> -p $AZ_PASS
Sous PowerShell, utilisez la cmdlet Get-Credential
.
$AzCred = Get-Credential -UserName <username>
az login -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password
Connectez-vous avec un autre abonné
Vous pouvez sélectionner un locataire pour vous connecter avec l’argument --tenant
. La valeur de cet argument peut être un domaine .onmicrosoft.com
, ou l’ID d’objet Azure du locataire. Les méthodes de connexion interactive et avec une ligne de commande fonctionnent toutes les deux avec --tenant
.
Dans certains environnements et à partir d’Azure CLI version 2.61.0, vous devez d’abord désactiver le sélecteur d’abonnement en définissant la core.login_experience_v2
propriété off
de configuration sur .
# disable the subscription selector (v. 2.61.0 and up)
az config set core.login_experience_v2=off
# login with a tenant ID
az login --tenant 00000000-0000-0000-0000-000000000000
Pour réactiver le sélecteur d’abonnement, exécutez az config set core.login_experience_v2=on
. Pour plus d’informations sur le sélecteur d’abonnement, consultez connexion interactive
Une fois que vous êtes connecté, si vous souhaitez modifier votre locataire actif, consultez le guide pratique pour modifier votre locataire actif.
Se connecter à l’aide de --scope
az login --scope https://management.core.windows.net//.default
Logout
Pour supprimer l’accès à Azure, utilisez la commande az logout .
az logout
Effacer votre cache d’abonnement
Pour mettre à jour votre liste d’abonnements, utilisez la commande az account clear . Vous devrez vous reconnecter pour afficher une liste mise à jour.
az account clear
az login
L’effacement de votre cache d’abonnement n’est pas techniquement le même processus que la déconnexion d’Azure.
Toutefois, lorsque vous effacez votre cache d’abonnement, vous ne pouvez pas exécuter de commandes Azure CLI, y compris az account set
, jusqu’à ce que vous vous reconnectiez.
Jetons d’actualisation
Lors de la connexion avec un compte d’utilisateur, Azure CLI génère et stocke un jeton d’actualisation d’authentification. Les jetons d’accès n’étant valides que pendant une courte période, un jeton d’actualisation est émis en même temps que le jeton d’accès. L’application cliente peut alors échanger ce jeton d’actualisation contre un nouveau jeton d’accès si nécessaire. Pour plus d’informations sur la durée de vie et l’expiration des jetons, consultez Jetons d’actualisation dans la plateforme d’identités Microsoft.
Utilisez la commande az account get-access-token pour récupérer le jeton d’accès :
# 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>"
Voici quelques informations supplémentaires sur les dates d’expiration des jetons d’accès :
- Les dates d’expiration sont mises à jour dans un format pris en charge par AZURE CLI basée sur MSAL.
- À partir d’Azure CLI 2.54.0,
az account get-access-token
retourne laexpires_on
propriété en même temps que laexpiresOn
propriété pour l’heure d’expiration du jeton. - La
expires_on
propriété représente un horodatage POSIX (Portable Operating System Interface) tandis que laexpiresOn
propriété représente une datetime locale. - La
expiresOn
propriété n’exprime pas « plier » lorsque l’heure d’été se termine. Cela peut entraîner des problèmes dans les pays ou régions où l’heure d’été est adoptée. Pour plus d’informations sur « plier », consultez PEP 495 – Désambiguation de l’heure locale. - Nous vous recommandons d’utiliser la
expires_on
propriété pour les applications en aval, car elle utilise le code UTC (Universal Time Code).
Exemple de sortie :
{
"accessToken": "...",
"expiresOn": "2023-10-31 21:59:10.000000",
"expires_on": 1698760750,
"subscription": "...",
"tenant": "...",
"tokenType": "Bearer"
}
Dépannage
Lorsque votre navigateur par défaut est Microsoft Edge, vous pouvez rencontrer l’erreur suivante lors de la tentative de connexion à Azure de manière interactive avec az login
: « La connexion pour ce site n’est pas sécurisée. » Pour résoudre ce problème, visitez edge://net-internals/#hsts dans Microsoft
Limité. Ajoutez localhost
sous Supprimer la stratégie de sécurité de domaine, puis sélectionnez Supprimer.
Voir aussi
- Aide-mémoire sur l’intégration d’Azure CLI
- Obtenir des exemples et des documents publiés relatifs à Azure CLI