Aller au contenu principal

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.

  1. Dans la section Ressources de l'application lorsque vous créez ou modifiez une application, cliquez sur + Ajouter une ressource > Connexion UC .

  2. Choisissez une connexion Unity Catalog dans la liste des connexions disponibles dans votre workspace.

  3. 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.
  4. (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 CONNECTION au 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 :

YAML
env:
- name: UC_CONNECTION_NAME
valueFrom: connection # Use your custom resource key if different

Utilisation de la connexion dans votre application :

Python
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.