Partager via


Surveiller et révoquer des jetons d’accès personnels

Pour vous authentifier auprès de l’API REST Azure Databricks, un utilisateur peut créer un jeton d’accès personnel (PAT) et l’utiliser dans sa demande d’API REST. Un utilisateur peut également créer un principal de service et l’utiliser avec un jeton d’accès personnel pour appeler les API REST Azure Databricks dans leurs outils CI/CD et automatisation. Cet article explique comment les administrateurs Azure Databricks peuvent gérer des jetons d’accès personnels dans leur espace de travail. Pour créer un jeton d’accès personnel Azure, consultez la section Authentification à l’aide d’un jeton d’accès personnels Azure Databricks.

Utiliser OAuth au lieu de jetons d’accès personnels

Databricks vous recommande d’utiliser des jetons d’accès OAuth plutôt que des PAT pour une sécurité et une commodité accrues. Databricks continue de prendre en charge les paTs, mais en raison de leur plus grand risque de sécurité, il est suggéré d’auditer l’utilisation actuelle de votre compte PAT et de migrer vos utilisateurs et principaux de service vers des jetons d’accès OAuth. Pour créer un jeton d’accès OAuth (au lieu d’un PAT) à utiliser avec un principal de service dans automation, consultez Authentifier l’accès à Azure Databricks avec un principal de service à l’aide d’OAuth (OAuth M2M).

Databricks vous recommande de réduire l’exposition de votre jeton d’accès personnel en procédant comme suit :

  1. Définissez une durée de vie courte pour tous les nouveaux jetons créés dans vos espaces de travail. La durée de vie doit être inférieure à 90 jours.
  2. Collaborez avec vos administrateurs et utilisateurs de votre espace de travail Azure Databricks pour basculer vers ces jetons avec des durées de vie plus courtes.
  3. Révoquez tous les jetons de longue durée pour réduire le risque de ces anciens jetons qui sont mal utilisés au fil du temps. Databricks révoque automatiquement les jetons d’accès personnels qui n’ont pas été utilisés en 90 jours ou plus.

Pour évaluer l’utilisation des PAT de votre organisation et planifier une migration des PAT vers des jetons d’accès OAuth, consultez Évaluer l’utilisation des jetons d’accès personnels dans votre compte Databricks.

Spécifications

  • Vous devez être administrateur d’espace de travail Azure Databricks pour désactiver les jetons d’accès personnels pour un espace de travail, surveiller et révoquer des jetons, contrôler les utilisateurs non administrateurs qui peuvent créer des jetons et utiliser des jetons, et définir une durée de vie maximale pour les nouveaux jetons.
  • Votre espace de travail Azure Databricks doit être au plan Premium.

Activer ou désactiver l’authentification par jeton d’accès personnel pour l’espace de travail

L’authentification par jeton d'accès personnel est activée par défaut pour tous les espaces de travail Azure Databricks créés à partir de 2018. Vous pouvez modifier ce paramètre dans la page des paramètres d’espace de travail.

Lorsque les jetons d’accès personnels sont désactivés pour un espace de travail, les jetons d’accès personnels ne peuvent pas être utilisés pour s’authentifier auprès d’Azure Databricks et les utilisateurs de l’espace de travail et les principaux de service ne peuvent pas créer de jetons. Aucun jeton n’est supprimé lorsque vous désactivez l’authentification par jeton d'accès personnel pour un espace de travail. Si les jetons sont réactivés ultérieurement, tous les jetons non expirés sont disponibles à l’utilisation.

Si vous souhaitez désactiver l’accès par jeton pour un sous-ensemble d’utilisateurs, vous pouvez garder l’authentification par jeton d'accès personnel activée pour l’espace de travail et définir des autorisations affinées pour les utilisateurs et les groupes. Consultez Contrôler qui peut créer et utiliser des jetons d’accès personnels.

Avertissement

Les intégrations Partner Connect et des partenaires nécessitent l’activation des jetons d’accès personnels sur un espace de travail.

Pour désactiver la capacité de créer et d’utiliser des jetons d’accès personnels pour l’espace de travail :

  1. Accédez à la page des paramètres.

  2. Cliquez sur l’onglet Avancé.

  3. Cliquez sur le bouton bascule Jetons d’accès personnels.

  4. Cliquez sur Confirmer.

    Cette modification peut prendre quelques secondes avant de prendre effet.

Vous pouvez également utiliser l’API de configuration de l’espace de travail pour désactiver les jetons d’accès personnels pour l’espace de travail.

Contrôler qui peut créer et utiliser des jetons d’accès personnels

Les administrateurs d’espace de travail peuvent définir des autorisations sur les jetons d’accès personnels pour contrôler les utilisateurs, les principaux de service et les groupes qui peuvent créer et utiliser des jetons. Pour plus d’informations sur la configuration des autorisations de jetons d’accès personnels, consultez Gérer les autorisations des jetons d’accès personnels.

Définir la durée de vie maximale des nouveaux jetons d’accès personnels

Vous pouvez gérer la durée de vie maximale des nouveaux jetons dans votre espace de travail à l’aide de Databricks CLI ou de l’API de configuration d’espace de travail. Cette limite s’applique uniquement aux nouveaux jetons.

Remarque

Databricks révoque automatiquement les jetons d’accès personnels inutilisés pendant 90 jours ou plus. Databricks ne révoque pas les jetons avec des durées de vie supérieures à 90 jours tant que les jetons sont activement utilisés.

En guise de meilleure pratique de sécurité, Databricks recommande l’utilisation de jetons OAuth sur des PAT. Si vous effectuez la transition de votre authentification à partir de PATs vers OAuth, Databricks recommande d’utiliser des jetons de courte durée pour une sécurité plus forte.

Définissez maxTokenLifetimeDays sur la durée de vie maximale des nouveaux jetons en jours, sous la forme d’un entier. Si vous le définissez sur zéro, les nouveaux jetons sont autorisés à n’avoir aucune limite de durée de vie. Par exemple :

Interface CLI Databricks

databricks workspace-conf set-status --json '{
  "maxTokenLifetimeDays": "90"
}'

API de configuration d’espace de travail

curl -n -X PATCH "https://<databricks-instance>/api/2.0/workspace-conf" \
  -d '{
  "maxTokenLifetimeDays": "90"
  }'

Pour utiliser le fournisseur Databricks Terraform pour gérer la durée de vie maximale des nouveaux jetons dans un espace de travail, consultez la Ressource databricks_workspace_conf.

Surveiller et révoquer des jetons

Cette section explique comment utiliser l’interface CLI Databricks pour gérer les jetons existants dans l’espace de travail. Vous pouvez également utiliser l’API gestion des jetons. Databricks révoque automatiquement les jetons d’accès personnels qui n’ont pas été utilisés en 90 jours ou plus.

Obtenir des jetons pour l’espace de travail

Pour obtenir les jetons de l’espace de travail :

Python

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

spark.createDataFrame([token.as_dict() for token in w.token_management.list()]).createOrReplaceTempView('tokens')

display(spark.sql('select * from tokens order by creation_time'))

Bash

# Filter results by a user by using the `created-by-id` (to filter by the user ID) or `created-by-username` flags.
databricks token-management list

Supprimer (révoquer) un jeton

Pour supprimer un jeton, remplacez TOKEN_ID par l’ID du jeton à supprimer :

databricks token-management delete TOKEN_ID