Partager via


Groupes de commandes auth

Remarque

Ces informations s’appliquent à Databricks CLI versions 0.205 et ultérieures. L’interface CLI Databricks est en préversion publique.

L’utilisation de l’interface CLI Databricks est soumise à la licence Databricks et à la notification de confidentialité Databricks, y compris les dispositions relatives aux données d’utilisation.

Le groupe de commandes auth au sein de l’interface CLI Databricks vous permet de :

  • Lister les profils de configuration d’authentification disponibles.
  • Obtenir des informations sur un profil de configuration d’authentification individuel.
  • Utiliser l’authentification utilisateur à machine (U2M) OAuth pour authentifier l’interface CLI Databricks auprès de vos comptes et de vos espaces de travail Azure Databricks.
  • Obtenir des informations sur les jetons d’accès OAuth que l’interface CLI Databricks peut avoir mis en cache.
  • Obtenez des détails sur la configuration utilisée par l’interface CLI Databricks pour l’authentification.

Vous exécutez les commandes auth en les ajoutant à databricks auth. Pour afficher l’aide sur la commande auth, exécutez databricks auth -h.

Répertorier les profils de configuration

Pour obtenir la liste de tous vos profils de configuration disponibles et vérifier s’ils sont valides, exécutez la commande auth profiles comme suit :

databricks auth profiles

Sortie (les points de suspension représentent le contenu omis, par souci de concision) :

Name            Host                Valid
DEFAULT         https://<host-url>  YES
<profile-name>  https://<host-url>  NO

Pour déterminer si chaque profil est valide, l’interface CLI Databricks exécute une commande d’espaces de travail de liste pour chaque profil au niveau du compte et exécute une commande « get current user » pour chaque profil au niveau de l’espace de travail. Si la commande réussit, YES est affichée ; sinon, NO est affichée.

La sortie de la commande auth profiles n’affiche aucun jeton d’accès. Pour afficher un jeton d’accès, consultez Obtenir des informations sur un profil de configuration.

Les profils de configuration sont stockés dans le fichier ~/.databrickscfg sur Linux ou macOS, ou %USERPROFILE%\.databrickscfg sur Windows par défaut. Vous pouvez modifier le chemin par défaut de ce fichier en définissant la variable d'environnement DATABRICKS_CONFIG_FILE. Pour savoir comment définir les variables d’environnement, consultez la documentation de votre système d’exploitation.

Pour créer des profils de configuration, consultez configurer le groupe de commandes.

Obtenir des informations sur un profil de configuration

Pour obtenir des informations sur un profil de configuration existant, exécutez la commande auth env, où <profile-name> représente le nom du profil et <account-or-workspace-url> représente l’URL de la console du compte Azure Databricks ou l’URL de l’espace de travail Azure Databricks, comme suit :

databricks auth env --profile <profile-name>

# Or:
databricks auth env --host <account-or-workspace-url>

Conseil

Vous pouvez appuyer sur Tab après --profile ou -p pour afficher une liste de profils de configuration disponibles existants à choisir, au lieu d’entrer manuellement le nom du profil de configuration.

Par exemple, voici la sortie d’un profil configuré avec l’authentification par jeton d’accès Azure Databricks :

{
  "env": {
    "DATABRICKS_AUTH_TYPE": "pat",
    "DATABRICKS_CONFIG_PROFILE": "<profile-name>",
    "DATABRICKS_HOST": "<workspace-url>",
    "DATABRICKS_TOKEN": "<token-value>"
  }
}

Remarque

Si plusieurs profils correspondent à la valeur --host, une erreur s’affiche, indiquant qu’il ne peut pas trouver un seul profil correspondant. Par exemple, vous pouvez avoir un profil qui a uniquement une valeur d’hôte et un autre profil qui a la même valeur d’hôte, mais aussi une valeur de jeton. Dans ce cas, l’interface CLI Databricks ne choisit pas de profil et s’arrête. Pour aider l’interface CLI Databricks à choisir le profil souhaité, essayez de spécifier une autre valeur --host. Pour les valeurs --host qui sont des URL de console de compte, essayez de spécifier une valeur --account-id au lieu d’une valeur --host.

Pour créer des profils de configuration, consultez configurer le groupe de commandes.

S’authentifier avec OAuth

Au lieu d’authentifier auprès d’Azure Databricks en utilisant des jetons d’accès et des profils de configuration, vous pouvez utiliser l’authentification utilisateur à machine OAuth (U2M). OAuth fournit des jetons avec des délais d’expiration plus rapides que les jetons d’accès personnels Azure Databricks, et offre de meilleures invalidation et étendue de session côté serveur. Étant donné que les jetons d’accès OAuth expirent en moins d’une heure, cela réduit le risque associé à la vérification accidentelle des jetons dans le contrôle de code source. Consultez Autoriser l’accès interactif aux ressources Azure Databricks avec un compte d’utilisateur à l’aide d’OAuth.

Pour configurer l’authentification U2M OAuth, consultez Authentification utilisateur à machine (U2M) OAuth.

Obtenir les détails du jeton d’accès OAuth

Si vous voulez voir des informations sur le jeton d’accès OAuth mis en cache que l’interface CLI Databricks a précédemment générée pour un espace de travail Azure Databricks, exécutez la commande auth token, où <workspace-url> représente l’URL de l’espace de travail Azure Databricks, comme suit :

databricks auth token <workspace-url>

Sortie :

{
  "access_token": "<token-value>",
  "token_type": "Bearer",
  "expiry": "<token-expiration-date-time>"
}

Obtenir les détails de l’authentification

Pour obtenir des détails sur la configuration que l’interface CLI Databricks utilise pour s’authentifier, exécutez la commande auth describe.

Si aucune option n’est spécifiée, la commande auth describe suit les méthodes par défaut pour l’authentification unifiée du client.

databricks auth describe

Sortie :

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ profile: default
  ✓ auth_type: <authentication-type> (from <path>/<to>/.databrickscfg config file)

Pour spécifier ces informations sur un espace de travail Azure Databricks spécifique, spécifiez l’option --host ainsi que l’URL de l’espace de travail.

databricks auth describe --host https://<workspace-instance-name>

Sortie :

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from --host flag)
  ✓ profile: default
  ✓ auth_type: <authentication-type>

Pour préciser ces informations sur un compte Azure Databricks spécifique, précisez l’option --host ainsi que l’URL de la console de compte Azure Databricks, https://accounts.azuredatabricks.net.

databricks auth describe --host <account-console-url>

Sortie :

Host: <account-console-url>
User: <user-name>@<domain>
AccountId: <account-id>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: <account-console-url> (from --host flag)
  ✓ account_id: <account-id>
  ✓ profile: default
  ✓ auth_type: <authentication-type>

Pour préciser ces informations sur un profil de configuration Azure Databricks spécifique, précisez l’option -p ou --profile avec le nom du profil.

databricks auth describe -p <profile-name>

Sortie :

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ token: ******** (from <path>/<to>/.databrickscfg config file)
  ✓ profile: <profile-name> (from --profile flag)
  ✓ auth_type: <authentication-type>

Pour inclure des informations sensibles dans la sortie (telles que les jetons d’accès personnels Azure Databricks et les clés secrètes client), précisez l’option --sensitive.

databricks auth describe --sensitive

Sortie :

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: pat
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ token: <token-value> (from <path>/<to>/.databrickscfg config file)
  ✓ profile: <profile-name>
  ✓ auth_type: pat