Ajouter une ressource de connexion Unity Catalog à une application Databricks
Ajoutez des connexions Unity Catalog en tant que Ressources Databricks Apps pour permettre un accès sécurisé aux services externes et aux sources de données. Les connexions Unity Catalog gèrent les identifiants et les détails d'authentification, afin que vous n'ayez pas à coder en dur les identifiants dans le code de votre application.
Ajouter une ressource de connexion Unity Catalog
Avant d'ajouter une connexion Unity Catalog en tant que ressource, veuillez consulter les prérequis des ressources de l'application.
-
Dans la section Ressources de l'application lorsque vous créez ou modifiez une application, cliquez sur + Ajouter une ressource > Connexion UC .
-
Choisissez une connexion Unity Catalog dans la liste des connexions disponibles dans votre workspace.
-
Sélectionnez le niveau d'autorisation de votre application :
- Utiliser la connexion : accorde à l’application l’autorisation d’utiliser la connexion pour accéder aux services externes. Correspond au privilège
USE CONNECTION.
- Utiliser la connexion : accorde à l’application l’autorisation d’utiliser la connexion pour accéder aux services externes. Correspond au privilège
-
(Facultatif) Indiquez une clé de ressource personnalisée, qui est la façon dont vous référencez la connexion dans la configuration de votre application. La clé default est
connection.
Lorsque vous ajoutez une ressource de connexion Unity Catalog :
- Databricks accorde le privilège
USE CONNECTIONau service principal de votre application sur la connexion sélectionnée. - L'application peut accéder aux services externes sans gérer directement les identifiants.
- Les identifiants de connexion sont gérés en toute sécurité par Unity Catalog et ne sont pas exposés à votre code d'application.
Variables d'environnement
Lorsque vous déployez une application avec une ressource de connexion Unity Catalog, Databricks expose le nom de la connexion via des variables d'environnement que vous pouvez référencer à l'aide du champ valueFrom.
Exemple de configuration :
env:
- name: UC_CONNECTION_NAME
valueFrom: connection # Use your custom resource key if different
Utilisation de la connexion dans votre application :
import os
import requests
from databricks.sdk import WorkspaceClient
# Access the connection name
connection_name = os.getenv("UC_CONNECTION_NAME")
# Initialize workspace client
w = WorkspaceClient()
# Make HTTP request through the connection
response = requests.post(
f"{w.config.host}/api/2.0/unity-catalog/connections/{connection_name}/proxy/api/v1/resource",
headers={
**w.config.authenticate(),
"Content-Type": "application/json",
"extra_header_key": "extra_header_value",
},
json={"key": "value"},
)
# Process the response
print(response.text)
Pour plus d'informations, consultez Utiliser les variables d'environnement pour accéder aux ressources.
Supprimez une Ressource de connexion Unity Catalog
Lorsque vous supprimez une ressource de connexion Unity Catalog d'une application, le Service Principal de l'application perd l'accès à la connexion. La connexion elle-même reste inchangée et continue d'être disponible pour les autres utilisateurs et applications qui disposent des autorisations appropriées.
Bonnes pratiques
Tenez compte des éléments suivants lorsque vous travaillez avec les ressources de connexion Unity Catalog :
- Implémentez la gestion des erreurs et la logique de nouvelle tentative pour les échecs de connexion et les problèmes de réseau.
- Surveillez les temps de réponse API et la latence de connexion, en particulier pour les requêtes interrégions ou inter-cloud.
- Tenez compte des coûts d'extraction des données lorsque vous effectuez des requêtes vers des services externes, en particulier pour les charges utiles importantes ou les appels d'API à volume élevé.
- Révisez et faites pivoter régulièrement les identifiants de connexion conformément à vos politiques de sécurité.
- Validez les réponses de l'API et implémentez des valeurs de délai d'attente appropriées pour les appels de services externes.