Se connecter avec Azure CLI

Il existe plusieurs types d’authentification pour l’interface Azure CLI : comment vous connectez-vous ? Le moyen le plus simple pour commencer est d’utiliser Azure Cloud Shell, qui vous connecte automatiquement. Localement, vous pouvez vous connecter de manière interactive via votre navigateur avec la commande az login. Lors de l’écriture de scripts, l’approche recommandée consiste à utiliser des principaux du service. En accordant uniquement les autorisations nécessaires à un principal du service, vous pouvez garantir la sécurité de votre automatisation.

Aucune de vos informations de connexion n’est stockée par Azure CLI. Au lieu de cela, un jeton d’actualisation d’authentification est généré par Azure, puis stocké. Depuis août 2018, ce jeton est révoqué après 90 jours d’inactivité, mais cette valeur peut être modifiée par Microsoft ou votre administrateur client. Une fois le jeton révoqué, vous recevez un message de l’interface CLI indiquant que vous devez vous reconnecter.

Une fois connecté, les commandes CLI sont exécutées sur votre abonnement par défaut. Si vous possédez plusieurs abonnements, vous pouvez modifier votre abonnement par défaut.

Notes

Selon votre méthode de connexion, votre locataire peut avoir des stratégies d’accès conditionnel qui limitent votre accès à certaines ressources.

Connexion interactive

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

    az login
    

    Si l’interface CLI peut ouvrir votre navigateur par défaut, elle lance le flux de code d’autorisation et ouvre le navigateur par défaut pour charger une page de connexion Azure.

    Sinon, elle lance le flux de code d’appareil et vous indique d’ouvrir une page de navigateur à l’adresse https://aka.ms/devicelogin et d’entrer 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.

Notes

Cette approche ne fonctionne pas avec les comptes Microsoft ou les comptes pour lesquels l’authentification à deux facteurs est activée.

az login -u <username> -p <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

Connexion avec un principal de service

Les principaux de service sont des comptes non liés à un utilisateur spécifique, qui peuvent détenir des autorisations sur ces derniers par le biais de rôles prédéfinis. L’authentification avec un principal de service est la meilleure façon d’écrire des scripts ou des programmes sécurisés, ce qui vous permet d’appliquer des restrictions d’autorisation et des informations d’identification statiques stockées localement. Pour en savoir plus sur les principaux de service, consultez Créer un principal du service avec Azure CLI.

Pour vous connecter avec un principal de service, il vous faut :

  • L’URL ou le nom associé au principal du service
  • Le mot de passe du principal de service ou le certificat X509 utilisé pour créer le principal du service au format PEM
  • Le locataire associé au principal du service, comme un domaine .onmicrosoft.com ou un ID d’objet Azure

Notes

Un CERTIFICAT doit être ajouté à la CLÉ PRIVÉE dans un fichier PEM. Pour voir un exemple de fichier au format PEM, consultez Authentification par certificat.

Important

Si votre principal du service utilise un certificat qui est stocké dans Key Vault, la clé privée de ce certificat doit être disponible sans connexion à Azure. Si vous souhaitez récupérer le certificat pour az login, consultez Récupérer un certificat à partir de Key Vault.

az login --service-principal -u <app-id> -p <password-or-cert> --tenant <tenant>

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 --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>

Sous PowerShell, utilisez la cmdlet Get-Credential.

$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>

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 <tenant>

Connectez-vous avec une identité gérée

Sur les ressources configurées pour des identités managées pour les ressources Azure, vous pouvez vous connecter avec l’identité managée. La connexion avec l’identité de la ressource s’effectue via l’indicateur --identity.

az login --identity

Si une ressource a plusieurs identités managées affectées par l’utilisateur et n’a aucune identité affectée par le système, vous devez spécifier l’ID du client, de l’objet ou de la ressource de l’identité managée affectée par l’utilisateur avec --username pour la connexion.

az login --identity --username <client_id|object_id|resource_id>

Pour en savoir plus sur les identités managées pour les ressources Azure, consultez Configurer des identités managées pour les ressources Azure et Utiliser des identités managées pour les ressources Azure pour se connecter.

Voir aussi