Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Databricks jetons d’accès personnels (PAT) vous permettent de vous authentifier auprès des ressources et des API au niveau de l’espace de travail. Vous pouvez les stocker dans des variables d’environnement ou des profils Azure Databricks configuration. Chaque Token d'Accès Personnel (PAT) est valide pour un seul espace de travail, et un utilisateur peut créer jusqu'à 600 PAT par espace de travail. Azure Databricks révoque automatiquement les PAT qui n’ont pas été utilisés pendant 90 jours.
Important
Dans la mesure du possible, Databricks recommande d’utiliser OAuth au lieu de paTs pour l’authentification par compte d’utilisateur, car OAuth offre une sécurité plus forte. Pour savoir comment s’authentifier avec un compte d’utilisateur Databricks à l’aide d’OAuth, consultez Authorize l’accès utilisateur à Azure Databricks avec OAuth.
Vous ne pouvez pas utiliser de jetons d'accès personnels pour automatiser les fonctionnalités d'Azure Databricks au niveau du compte. Utilisez plutôt les jetons Microsoft Entra ID des administrateurs de compte Azure Databricks. Les administrateurs de compte Azure Databricks peuvent être des utilisateurs ou des principaux de services. Pour plus d'informations, consultez les pages suivantes :
Créer des jetons d’accès personnels pour les utilisateurs de l’espace de travail
Pour créer un jeton d’accès personnel pour votre utilisateur d’espace de travail Azure Databricks, procédez comme suit :
- Dans votre espace de travail Azure Databricks, cliquez sur votre nom d’utilisateur dans la barre supérieure, puis sélectionnez Settings.
- Cliquez sur Développeur.
- À côté de Jetons d’accès, cliquez sur Gérer.
- Cliquez sur Générer un nouveau jeton.
- Entrez un nom qui vous aide à identifier ce jeton ultérieurement.
- Définissez la durée de vie du jeton en jours. Consultez Définir la durée de vie maximale des nouveaux jetons d’accès personnels.
- Sélectionnez un type d’étendue et ajoutez des étendues d’API. Sélectionnez BI Tools pour les outils qui se connectent à des entrepôts DATAbricks SQL tels que Tableau ou Power BI, ou sélectionnez Other API pour choisir manuellement des étendues. Consultez les jetons d’accès personnels attribués.
- Pour activer la définition automatique de l’étendue pour ce jeton, activez l’option Définition automatique de l’étendue des jetons. L’auto-scope réduit automatiquement les portées du token aux API qu’il utilise, appliquant temporairement le
all-apisscope pendant la période d’observation. Cette option n’apparaît que lorsqu’un administrateur a activé l’aperçu de l’auto-scoping pour votre espace de travail, et l’auto-scoping ne s’applique qu’aux jetons dont la durée de vie dépasse 30 jours. Consultez la délimitation automatique du périmètre des jetons d’accès personnels. - Cliquez sur Générer.
- Copiez le jeton affiché dans un emplacement sécurisé, puis cliquez sur Terminé. Enregistrez le jeton de manière sécurisée et ne le partagez pas. Si vous perdez le jeton d'accès, vous devez en créer un nouveau.
Si vous ne pouvez pas créer ou utiliser de jetons, votre administrateur d’espace de travail peut avoir désactivé des jetons ou ne pas vous accorder l’autorisation. Consultez votre administrateur d'espace de travail ou les personnes suivantes :
- Activer ou désactiver l'authentification par jeton d'accès personnel pour l'espace de travail
- Autorisations de jeton d'accès personnel
Jetons d’accès personnels délimités
Les jetons d’accès personnels délimités limitent les autorisations d’un jeton aux opérations d’API spécifiques. Au lieu d’accorder l’accès complet à l’espace de travail, vous affectez une ou plusieurs étendues d’API, telles que sql, unity-catalogou scim, qui limitent les opérations d’API REST que le jeton peut appeler.
Avertissement
Les jetons avec l’étendue authentication peuvent créer de nouveaux jetons avec n’importe quelle étendue. Accordez cette étendue uniquement aux jetons qui doivent gérer d’autres jetons.
Pour créer un jeton délimité dans l’interface utilisateur de l’espace de travail, sélectionnez un type d’étendue et ajoutez des étendues d’API lorsque vous générez un nouveau jeton. Sélectionnez BI Tools pour les outils qui se connectent à des entrepôts DATAbricks SQL tels que Tableau ou Power BI, ou sélectionnez Other API pour choisir manuellement des étendues.
Pour obtenir la liste complète des étendues et de leurs opérations d’API associées, consultez les étendues d’API.
Définition automatique de la portée pour les jetons d’accès personnels
La définition automatique de la portée réduit automatiquement les autorisations d’un jeton aux seules API qu’il utilise activement. Azure Databricks observe l’utilisation de l’API par le jeton sur une période de 30 jours, puis applique les étendues inférées. La définition automatique de l’étendue s’exécute une seule fois par jeton. Pendant la période d’observation, le jeton conserve l’accès complet à l’espace de travail (le scope all-apis). Azure Databricks envoie un e-mail de rappel 7 jours avant la mise en application et un e-mail de mise en application lorsque les étendues inférées sont appliquées.
Contrôles de cadrage automatique
- Aperçu de l’espace de travail (contrôlée par un administrateur) : un administrateur active ou désactive l’aperçu de la définition automatique de l’étendue pour l’ensemble de l’espace de travail, depuis la console du compte ou la page Préversions de l’espace de travail. Consultez Gérer les préversions d’Azure Databricks.
-
Paramètre par jeton (
autoscope_enabled) : lorsque l’aperçu est activé, chaque jeton peut être inclus ou exclu individuellement au moment de sa création.
La définition automatique de l’étendue s’applique uniquement aux jetons dont la durée de validité dépasse 30 jours. Cela inclut les nouveaux jetons créés avec l’auto-scoping activé ainsi que les jetons existants à longue durée de vie. Pour un jeton éligible existant, la période d’observation de 30 jours commence lorsqu’un administrateur active l’aperçu. Azure Databricks applique les étendues inférées à la fin de cette période et envoie un e-mail de rappel 7 jours avant leur application, selon le même calendrier que pour un nouveau jeton soumis à la définition automatique de l’étendue.
Désactiver la définition automatique de l’étendue
-
Un seul jeton, avant la mise en application : attribuez au jeton des étendues spécifiques depuis l’interface de l’espace de travail (Paramètres>Développeur>Jetons d’accès>Gérer, puis cliquez sur Mettre à jour le jeton) ou à l’aide de l’API des jetons (voir Mettre à jour les étendues d’un jeton d’accès personnel). Définir des portées spécifiques désactive définitivement la définition automatique des portées pour ce token. Rétablir l’étendue
all-apisdu jeton (un tableauscopesvide) n’a aucun effet et ne désactive pas la définition automatique de l’étendue. Pour conserver un jeton disposant d’un accès completall-apiset qui ne sera jamais soumis à la définition automatique de l’étendue, créez un nouveau jeton en désactivant cette fonctionnalité. - L’ensemble de l’espace de travail : demandez à un administrateur de désactiver l’aperçu de la définition automatique de l’étendue dans la page Aperçus. Consultez Gérer les préversions d’Azure Databricks.
Une fois la mise en application terminée, la définition automatique de l’étendue ne s’exécute plus pour ce jeton. Vous pouvez alors modifier librement ses étendues, y compris rétablir l’étendue all-apis.
Remarque
La désactivation depuis l’interface de l’espace de travail n’est possible que pour les jetons dont vous êtes propriétaire. Pour désactiver la définition automatique de l’étendue d’un jeton associé à un principal de service, définissez ses étendues à l’aide de la requête PATCH /api/2.0/token/{token_id_sha256} à la place.
Pour consulter l’état de la définition automatique de l’étendue et les étendues inférées de vos jetons, reportez-vous à la page Consulter l’état de la définition automatique de l’étendue des jetons.
Créer des jetons d’accès personnels pour les principaux de service
Un principal de service peut créer des jetons d’accès personnels pour lui-même.
Exécutez la commande suivante pour générer un jeton d’accès :
databricks tokens create \ --lifetime-seconds <lifetime-seconds> \ -p <profile-name>Remplacez les valeurs suivantes :
-
<lifetime-seconds>: durée de vie du jeton en secondes, par exemple 86400 pendant 1 jour. La valeur par défaut est la valeur maximale de l’espace de travail (généralement 730 jours). -
<profile-name>: profil de configuration avec des informations d’authentification. La valeur par défaut estDEFAULT.
-
Copiez le
token_valuede la réponse, qui est le jeton d’accès de votre principal de service. Enregistrez le jeton de manière sécurisée et ne le partagez pas. Si vous perdez le jeton d'accès, vous devez en créer un nouveau.
Si vous ne pouvez pas créer ou utiliser de jetons, votre administrateur d’espace de travail peut avoir désactivé des jetons ou ne pas vous accorder l’autorisation. Consultez votre administrateur d'espace de travail ou les personnes suivantes :
- Activer ou désactiver l'authentification par jeton d'accès personnel pour l'espace de travail
- Autorisations de jeton d'accès personnel
Effectuer une authentification par jeton d’accès personnel
Pour configurer l'authentification par jeton d’accès personnel d'Azure Databricks, définissez les variables d’environnement associées suivantes, les champs .databrickscfg, les champs Terraform, ou les champs Config :
- L’hôte Azure Databricks, c’est-à-dire l’URL Azure Databricks de l’espace de travail cible, par exemple
https://adb-1234567890123456.7.azuredatabricks.net. - Jeton d’accès personnel Azure Databricks pour le compte d’utilisateur Azure Databricks.
Pour effectuer Azure Databricks l’authentification par jeton d’accès personnel, intégrez ce qui suit dans votre code, en fonction de l’outil ou du Kit de développement logiciel (SDK) participant :
Environnement
Pour utiliser des variables d'environnement pour un type d'authentification Azure Databricks spécifique avec un outil ou un Kit de développement logiciel (SDK), consultez Authorize access to Azure Databricks resources ou la documentation de l'outil ou du SDK. Consultez également les variables et champs d’environnement pour l’authentification unifiée et la priorité de la méthode d’authentification.
Définissez les variables d’environnement suivantes :
-
DATABRICKS_HOST, définie sur l’URL Azure Databricks de l’espace de travail, par exemplehttps://adb-1234567890123456.7.azuredatabricks.net. -
DATABRICKS_TOKEN, définie sur la chaîne du jeton.
Profil
Créez ou identifiez un profil Azure Databricks configuration avec les champs suivants dans votre fichier .databrickscfg. Si vous créez le profil, remplacez les espaces réservés par les valeurs appropriées. Pour utiliser le profil avec un outil ou un SDK, consultez Authorize access to Azure Databricks resources ou la documentation de l'outil ou du SDK. Consultez également les variables et champs d’environnement pour l’authentification unifiée et la priorité de la méthode d’authentification.
Définissez les valeurs suivantes dans votre fichier .databrickscfg. Dans ce cas, l’hôte est l’URL Azure Databricks per-workspace, par exemple https://adb-1234567890123456.7.azuredatabricks.net :
[<some-unique-configuration-profile-name>]
host = <workspace-url>
token = <token>
Au lieu de définir manuellement les valeurs, vous pouvez utiliser l’interface CLI Databricks pour définir ces valeurs à la place :
Remarque
La procédure suivante utilise l’interface CLI Databricks pour créer un profil de configuration Azure Databricks avec le nom DEFAULT. Si vous avez déjà un profil de configuration DEFAULT, cette procédure remplace votre profil de configuration DEFAULT existant.
Pour vérifier si vous disposez déjà d’un DEFAULT profil de configuration et pour afficher les paramètres de ce profil s’il existe, utilisez l’interface CLI Databricks pour exécuter la commande databricks auth env --profile DEFAULT.
Pour créer un profil de configuration avec un nom autre que DEFAULT, remplacez la partie DEFAULT de --profile DEFAULT dans la commande databricks configure suivante par un autre nom de profil de configuration.
Utilisez l’interface CLI Databricks pour créer un profil de configuration Azure Databricks nommé
DEFAULTqui utilise Azure Databricks authentification par jeton d’accès personnel. Pour ce faire, exécutez la commande suivante :databricks configure --profile DEFAULTPour l’invite Databricks Host, entrez votre URL Azure Databricks per-workspace, par exemple
https://adb-1234567890123456.7.azuredatabricks.net.Pour l’invite Jeton d’accès personnel, entrez le jeton d'accès personnel d'Azure Databricks pour votre espace de travail.
INTERFACE DE LIGNE DE COMMANDE
Pour l’interface CLI Databricks, exécutez la commande databricks configure. Quand vous y êtes invité, entrez les paramètres suivants :
- L’hôte Azure Databricks, c’est-à-dire l’URL Azure Databricks de l’espace de travail cible, par exemple
https://adb-1234567890123456.7.azuredatabricks.net. - Jeton d’accès personnel Azure Databricks pour le compte d’utilisateur Azure Databricks.
Pour plus d’informations, consultez Authentification par jeton d’accès personnel (hérité)
Se connecter
Remarque
Azure Databricks l’authentification par jeton d’accès personnel est prise en charge sur les versions de Databricks Connect suivantes :
- Pour Python, Databricks Connect pour Databricks Runtime 13.3 LTS et versions ultérieures.
- Pour Scala, Databricks Connect pour Databricks Runtime 13.3 LTS et versions ultérieures.
Pour Databricks Connect, utilisez l’interface CLI Databricks pour définir les valeurs de votre fichier .databrickscfg, pour les opérations de niveau Azure Databricks workspace comme spécifié dans la section Profile.
La procédure suivante crée un profil de configuration Azure Databricks nommé DEFAULT, qui remplace tout profil DEFAULT existant. Pour vérifier si un DEFAULT profil existe, exécutez databricks auth env --profile DEFAULT. S’il existe, utilisez un autre nom de profil.
Exécutez la commande suivante pour créer un profil de configuration Azure Databricks nommé
DEFAULTqui utilise l’authentification par jeton d’accès personnel.databricks configure \ --configure-cluster \ --profile DEFAULTPour l’invite Databricks Host, entrez votre URL Azure Databricks per-workspace, par exemple
https://adb-1234567890123456.7.azuredatabricks.net.Pour le prompt Jeton d’accès personnel, saisissez le jeton d’accès personnel correspondant à votre espace de travail.
Dans la liste des clusters disponibles, sélectionnez le cluster cible Azure Databricks dans votre espace de travail. Vous pouvez taper n’importe quelle partie du nom d’affichage du cluster pour filtrer la liste des clusters disponibles.
Utiliser l’API REST Azure Databricks pour émettre des jetons d’accès personnels
Azure Databricks fournit un point de terminaison REST /api/2.0/token/create pour émettre des PAT. Pour plus d’informations sur l’API, consultez Créer un jeton d’utilisateur.
Dans l’exemple suivant, définissez ces valeurs :
-
<databricks-instance>: URL de votre espace de travail Databricks. Par exemple :dbc-abcd1234-5678.cloud.databricks.com. -
<your-existing-access-token>: un jeton d’accès personnel valide existant, sous forme de chaîne, disposant des autorisations pour créer de nouveaux jetons. -
<lifetime-seconds>: durée de vie du jeton en secondes. -
<scopes>: Une liste de scopes à attribuer au jeton, ou un tableau vide ([]) pour accorder un accès complet à l’espace de travail (le scopeall-apis). Consultez les jetons d’accès personnels attribués.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
"lifetime_seconds": <lifetime-seconds>,
"scopes": [
"sql",
"authentication"
],
"autoscope_enabled": true
}'
Si elle réussit, cela entraîne une charge utile de réponse similaire à :
{
"token_value": "<your-newly-issued-pat>",
"token_info": {
"token_id": "<token-id>",
"creation_time": <creation-timestamp>,
"expiry_time": <expiry-timestamp>,
"comment": "<comment>",
"scopes": ["authentication", "sql"],
"last_accessed_time": 0
}
}
Utilisez le nouveau jeton renvoyé dans la réponse et transmettez-le dans l’en-tête d’autorisation pour les appels suivants aux API REST de Databricks. Par exemple :
# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
-H "Authorization: Bearer <your-new-pat>"
import requests
headers = {
'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)
Mettre à jour les étendues d’un jeton d’accès personnel
Si un jeton délimité manque l’étendue requise pour un appel d’API, la requête échoue avec une erreur indiquant l’étendue manquante. Pour mettre à jour les étendues d’un jeton, utilisez le point de terminaison REST /api/2.0/token/<token_id>. Le jeton appelant doit avoir l’étendue authentication , ce qui permet de gérer d’autres jetons. Utilisez le update_mask champ pour spécifier les champs de jeton à mettre à jour.
curl -X PATCH https://<databricks-instance>/api/2.0/token/<token_id> \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
"token": {
"scopes": ["sql", "unity-catalog"]
},
"update_mask": "scopes"
}'
Pour accorder à un jeton un accès complet à l’espace de travail (le all-apis scope), définissez scopes sur un tableau vide ("scopes": []). La chaîne all-apis littérale n’est pas une valeur de portée acceptée.
Remarque
Azure Databricks recommande d’attribuer des étendues spécifiques plutôt que d’accorder un accès all-apis. Consultez la délimitation automatique du périmètre des jetons d’accès personnels.
Les modifications d’étendue peuvent prendre jusqu’à dix minutes pour se propager.
Pour afficher toutes les étendues disponibles, utilisez GET /api/2.0/token-scopes.