Obtenir des jetons Microsoft Entra ID pour les utilisateurs avec Azure CLI
Important
Cet article explique comment créer manuellement des jetons Microsoft Entra ID pour les utilisateurs à l'aide d'Azure CLI.
Databricks ne recommande pas de créer manuellement des jetons Microsoft Entra ID pour les utilisateurs Azure Databricks. C’est parce que chaque jeton Microsoft Entra ID est de courte durée et expire généralement dans l’heure. Au-delà de ce délai, vous devez générer manuellement un jeton Microsoft Entra ID de remplacement. Utilisez plutôt l’un des outils ou SDK participants qui implémentent la norme d’authentification unifiée du client Databricks. Ces outils et kits de développement logiciel (SDK) génèrent et remplacent automatiquement pour vous les jetons Microsoft Entra ID expirés, en exploitant l’authentification Azure CLI.
Vous pouvez utiliser Azure CLI pour obtenir des jetons d'accès Microsoft Entra ID pour les utilisateurs.
Remarque
Vous pouvez également définir un principal de service dans Azure Active Directory et obtenir un jeton d'accès Microsoft Entra ID pour ce principal de service plutôt que pour un utilisateur. Consultez Obtenir des jetons Microsoft Entra ID pour les principaux de service.
Obtenez l’ID d’abonnement Azure approprié pour votre compte d’utilisateur. Si vous ne le connaissez pas encore, effectuez l’une des opérations suivantes :
Dans la barre de navigation supérieure de votre espace de travail Azure Databricks, cliquez sur votre nom d’utilisateur, puis sur Portail Azure. Dans la page de ressources de l’espace de travail Azure Databricks qui s’affiche, cliquez sur Vue d’ensemble dans la barre latérale. Recherchez ensuite le champ ID d’abonnement, qui contient l’ID d’abonnement.
Utilisez l’interface Azure CLI pour exécuter la commande az databricks workspace list en utilisant les options
--query
et-o
ou--output
pour affiner les résultats. Remplacezadb-0000000000000000.0.azuredatabricks.net
par le nom de votre instance d’espace de travail, sans inclurehttps://
. Dans cet exemple, le00000000-0000-0000-0000-000000000000
après/subscriptions/
dans la sortie est l’ID d’abonnement.az databricks workspace list --query "[?workspaceUrl==\`adb-0000000000000000.0.azuredatabricks.net\`].{id:id}" -o tsv # /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-rg/providers/Microsoft.Databricks/workspaces/my-ws
Si le message suivant s’affiche, vous êtes connecté au mauvais tenant :
The subscription of '<subscription-id>' doesn't exist in cloud 'AzureCloud'.
Pour vous connecter au bon tenant, vous devez réexécuter la commandeaz login
en utilisant l’option-t
ou--tenant
pour spécifier l’ID du tenant approprié.Vous pouvez obtenir l’ID de locataire d’un espace de travail Azure Databricks en exécutant la commande
curl -v <per-workspace-URL>/aad/auth
, puis en recherchant la sortie< location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000
, où00000000-0000-0000-0000-000000000000
représente l’ID de locataire. Consultez également Obtenir des ID d’abonnement et de locataire dans le Portail Azure.az login -t <tenant-id>
Une fois que vous disposez de l’ID d’abonnement Azure approprié pour votre compte d’utilisateur, commencez par vous connecter à Azure en utilisant Azure CLI afin d’exécuter la commande az login. Après avoir exécuté cette commande, suivez les instructions à l’écran pour terminer la connexion avec votre compte.
az login
Vérifiez que vous êtes connecté à l’abonnement approprié pour votre utilisateur connecté. Pour ce faire, exécutez la commande az account set en utilisant l’option
-s
ou--subscription
pour spécifier l’ID d’abonnement approprié.az account set -s <subscription-id>
Générez votre jeton d'accès Microsoft Entra ID en exécutant la commande az account get-access-token. Utilisez l’option
--resource
pour spécifier l’ID de ressource unique pour le service Azure Databricks, qui est2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
. Vous pouvez afficher uniquement la valeur du jeton Microsoft Entra ID dans la sortie de la commande en utilisant les options--query
et-o
ou--output
.az account get-access-token \ --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d \ --query "accessToken" \ -o tsv
Remarque
L’interface de ligne de commande Azure basée sur MSAL utilise Microsoft Authentication Library (MSAL) comme bibliothèque d’authentification sous-jacente. Si vous ne parvenez pas à utiliser le jeton d'accès Microsoft Entra ID généré par Azure CLI, vous pouvez également essayer d'utiliser MSAL directement pour obtenir un jeton d'accès Microsoft Entra ID pour un utilisateur. Consultez Obtenir des jetons Microsoft Entra ID pour les utilisateurs à l’aide de l’interface CLI.