Aller au contenu principal

Secrets externes dans Unity Catalog

info

Bêta

Cette fonctionnalité est en version bêta. Les administrateurs de workspace peuvent contrôler l’accès à cette fonctionnalité depuis la page Aperçus . Consultez Gérer les aperçus Databricks.

Les secrets externes connectent un schéma Unity Catalog à un gestionnaire de secrets externe. Au lieu que Databricks stocke les valeurs des secrets, ces derniers restent dans votre gestionnaire de secrets cloud et apparaissent dans Unity Catalog en tant qu’objets sécurisables que vous pouvez gouverner et référencer.

Fonctionnement des secrets externes

Vous configurez le backend de secrets par schéma. Par « default », Databricks stocke et gère chaque secret dans un schéma, sauf s’il est pris en charge par un gestionnaire de secrets externe. Un schéma ne peut pas combiner les deux.

Lorsqu’un schéma est pris en charge par un gestionnaire de secrets externe, Databricks effectue les opérations suivantes :

  • Affiche les secrets que la connexion peut lister. Chaque secret que la connexion est autorisée à lister apparaît en tant que secret Unity Catalog dans Catalog Explorer, dbutils et l’API REST Unity Catalog. Des restrictions de nommage s’appliquent. Voir Restrictions de nommage.
  • Lit les valeurs à la demande. Databricks ne stocke pas la valeur secrète dans Unity Catalog ; chaque récupération lit la valeur actuelle directement depuis le gestionnaire de secrets externe, ce qui ajoute de la latence et peut entraîner des frais auprès du fournisseur cloud. Les valeurs récupérées peuvent être mises en cache sur le compute qui les a demandées, comme pour les autres secrets.
  • Gère l'accès avec les privilèges Unity Catalog. READ SECRET et REFERENCE SECRET, ainsi que l'héritage des privilèges, s'appliquent de la même manière que pour les secrets gérés par Databricks. Comme les secrets externes sont en lecture seule, Unity Catalog rejette les opérations CREATE SECRET, WRITE SECRET et de suppression. Consultez les limitations. Tous les accès au gestionnaire de secrets externe passent par l'identifiant de service de la connexion ; ainsi, les logs d'audit côté cloud attribuent l'accès à cette identité, tandis que les logs d'audit Unity Catalog enregistrent toujours l'utilisateur Databricks.

Lister les secrets d’un schéma Trigger l’importation. Il ne s’agit pas d’une synchronisation continue en arrière-plan. L’importation s’exécute de manière asynchrone ; ainsi, Unity Catalog ne reflète un secret ajouté ou supprimé du gestionnaire de secrets externe qu’après qu’une liste ultérieure déclenche un Trigger, ce qui peut prendre jusqu’à quelques minutes pour les magasins contenant de nombreux secrets. La lecture d’un secret spécifique importe ou refresh uniquement ce secret, et chaque lecture récupère la valeur la plus récente. Lorsque vous supprimez définitivement un secret dans le gestionnaire de secrets externe, Databricks supprime le secret Unity Catalog correspondant, y compris ses métadonnées, ses autorisations et ses balises.

Restrictions de nommage

Les noms des secrets externes doivent être conformes aux conventions de nommage d’Unity Catalog pour être importés :

  • Unity Catalog n’importe pas les noms de plus de 248 caractères.
  • Les noms des secrets Unity Catalog ne sont pas sensibles à la casse. Si deux secrets externes ne diffèrent que par la casse, Unity Catalog utilise uniquement le premier importé et ignore les autres.
  • Unity Catalog remplace les caractères qu’il ne prend pas en charge : . devient : et / devient |. Databricks recommande d’éviter ces caractères dans les noms des secrets externes.

Gérer les quotas de secrets

Unity Catalog limite le nombre de secrets qu’un schéma et un métastore peuvent contenir. Consultez les limitations. Si un schéma contient plus de secrets que le quota ne l’autorise, Databricks importe d’abord les secrets les plus anciens par date de création dans le gestionnaire de secrets externe, jusqu’à concurrence du quota, et n’importe pas le reste. N’exposez dans Databricks que les secrets dont vous avez besoin afin que le schéma reste dans les limites du quota :

Ajoutez un filtre de tag à la connexion afin que Unity Catalog n’affiche que les secrets tagués. Voir Filtrer les secrets importés par tag.

Limitations

Outre les limitations qui s’appliquent à tous les secrets Unity Catalog, les secrets gérés en externe présentent les limitations suivantes :

  • Lecture seule dans Unity Catalog. Vous ne pouvez pas créer, mettre à jour, renommer ou supprimer des secrets dans un schéma géré en externe depuis Databricks. Gérez ces secrets dans le gestionnaire de secrets externes.

  • Un back-end par schéma. Tous les secrets d’un schéma utilisent le même back-end. Un schéma ne peut pas mélanger des secrets gérés par Databricks et des secrets pris en charge par un système externe.

  • Le changement de back-end supprime les secrets importés. Le changement de back-end d’un schéma ou son orientation vers une connexion différente supprime les secrets externes précédemment importés du schéma, y compris leurs métadonnées Unity Catalog, leurs autorisations et leurs balises.

  • L’accès cross-cloud n’est pas pris en charge. Sauvegardez les schémas avec le gestionnaire de secrets natif du cloud du Workspace.

  • Latence et coût de lecture. Chaque lecture récupère la valeur auprès du gestionnaire de secrets externe, ce qui ajoute de la latence et peut entraîner des coûts auprès du fournisseur cloud.

  • Liste cohérente à terme. Les secrets ajoutés ou supprimés du gestionnaire de secrets externe peuvent mettre quelques minutes à apparaître dans Unity Catalog, en particulier pour les grands magasins de secrets.

  • Le filtrage par tag est réservé à AWS. Les options tag_key et tag_value s’appliquent aux connexions AWS Secrets Manager.

Ressources supplémentaires