Se connecter de façon interactive avec Azure CLI

La méthode d’authentification par défaut d’Azure CLI utilise un navigateur web et un jeton d’accès pour la connexion.

  1. 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.

  2. 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.

az login --tenant 00000000-0000-0000-0000-000000000000

Une fois que vous êtes connecté, si vous souhaitez modifier votre locataire actif, consultez le guide pratique pour modifier votre locataire actif.

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 la expires_on propriété en même temps que la expiresOn 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 la expiresOn 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 Edge. Ajoutez localhost sous Supprimer la stratégie de sécurité de domaine, puis sélectionnez Supprimer.

Voir aussi