Partager via


Ajouter des ressources à une application Databricks

Vos applications Databricks peuvent s’intégrer à différentes fonctionnalités de plateforme Azure Databricks, telles que Databricks SQL pour interroger des données, Lakeflow Jobs pour l’ingestion et le traitement des données, Mosaïque AI Model Service pour accéder aux modèles IA génératifs et aux secrets Azure Databricks pour gérer les informations sensibles. Dans le contexte des applications, ces fonctionnalités de plateforme sont appelées ressources.

Pourquoi utiliser des ressources ?

Pour maintenir les applications portables et sécurisées, évitez le codage en dur des identifiants de ressources. Par exemple, au lieu d’incorporer un ID d’entrepôt SQL fixe dans votre code d’application, configurez l’entrepôt SQL en tant que ressource via l’interface utilisateur Databricks Apps.

L’utilisation de ressources Databricks Apps au lieu d’appels d’API directs présente plusieurs avantages :

  • Gère automatiquement les informations d’identification et les autorisations, ce qui élimine la gestion manuelle des jetons dans votre code.
  • Gère automatiquement les chemins d’accès des ressources, les points de terminaison et les détails de connexion.
  • Fournit un accès sécurisé et géré au lieu d’exiger des informations d’identification auto-gérées pour les appels d’API directs.
  • Maintient les applications portables entre les environnements sans modification du code.

Types de ressources pris en charge

Le tableau suivant répertorie tous les types de ressources que vous pouvez ajouter à votre application Databricks :

Type de ressource Descriptif Clé de ressource par défaut Autorisations disponibles
Espace Génie Interface d’analytique basée sur l’IA pour les requêtes en langage naturel genie-space
  • Peut afficher
  • Peut s’exécuter
  • Peut modifier
  • Peut gérer
Base de données Lakebase Base de données du catalogue Unity pour le stockage et l’interrogation des données database
  • Peut se connecter et créer
Travail Lakeflow Flux de travail d’ingestion et de traitement des données job
  • Peut afficher
  • Peut gérer l’exécution
  • Peut gérer
Expériences MLflow Suivi des expériences machine learning et gestion du cycle de vie des modèles experiment
  • Peut lire
  • Peut modifier
  • Peut gérer
Point de terminaison de serveur de modèles Déploiement du modèle Machine Learning pour les demandes d’inférence serving-endpoint
  • Peut afficher
  • Peut interroger
  • Peut gérer
Secret Sécuriser le stockage pour les valeurs sensibles telles que les clés d’API et les jetons secret
  • Peut lire
  • Peut écrire
  • Peut gérer
SQL Warehouse Ressources de calcul pour l’exécution de requêtes SQL sql-warehouse
  • Peut utiliser
  • Peut gérer
Connexion du catalogue Unity Connexions managées à des sources de données externes connection
  • Utiliser la connexion
Fonction définie par l’utilisateur Fonctions SQL et Python inscrites dans le catalogue Unity function
  • Peut s’exécuter
Volume du catalogue Unity Stockage de fichiers dans le catalogue Unity pour les artefacts et données d’application volume
  • Peut lire
  • Peut lire et écrire
Index de recherche vectorielle Recherche sémantique et récupération basée sur la similarité à partir d’incorporations de vecteurs vector-search-index
  • Peut sélectionner

Conditions préalables

Pour ajouter une ressource à une application, les conditions suivantes doivent être remplies :

  • La ressource doit exister.
  • L’utilisateur qui ajoute la ressource doit avoir l’autorisation Can manage sur la ressource et l’application.

Les applications s’exécutent avec des privilèges minimum et s’appuient sur des ressources existantes au sein de la plateforme Azure Databricks. En cas de déploiement, le principal de service de l’application accède à ces ressources et doit disposer des autorisations nécessaires, telles que l’accès au niveau de la table pour les requêtes SQL ou l’accès en lecture aux secrets. Consultez Configurer l’autorisation dans une application Databricks.

Configurer des ressources pour votre application

Les ressources permettent à votre application de se connecter en toute sécurité aux services dont elle dépend, sans intégrer directement des valeurs sensibles ou spécifiques à l’environnement.

Ajoutez des ressources directement dans l’interface utilisateur Databricks Apps lorsque vous créez ou modifiez une application.

  1. Lorsque vous créez ou modifiez une application, accédez à l’étape Configurer .
  2. Dans la section Ressources de l’application , cliquez sur + Ajouter une ressource.
  3. Sélectionnez le type de ressource que vous souhaitez ajouter.
  4. Définissez les autorisations pour le principal app service sur la ressource.
  5. Affectez une clé à la ressource et référencez cette clé dans votre app.yaml fichier.

Ajout d’un entrepôt SQL en tant que ressource d’application dans l’interface utilisateur

Gérer l’accès aux applications aux ressources

Chaque application a un principal de service dédié. Suivez ces bonnes pratiques pour gérer l’accès en toute sécurité.

  • Utilisez le principal de service de l’application pour l’authentification. Ne codez jamais en dur les jetons d’accès personnels (PAT) dans votre code. Les informations d’identification d’accès sont automatiquement injectées en tant que variables d’environnement :
    • DATABRICKS_CLIENT_ID
    • DATABRICKS_CLIENT_SECRET
  • Ne partagez pas les informations d’identification du principal de service entre les applications ou entre les utilisateurs. Chaque application doit utiliser ses propres informations d’identification dédiées pour l’isolation et la sécurité.
  • Appliquez le principe du moindre privilège. Accordez uniquement les autorisations minimales requises au principal du service de l’application. Par exemple:
    • Accordez CAN USE sur un entrepôt SQL si l’application doit uniquement exécuter des requêtes.
    • Accordez CAN QUERY sur un point de terminaison de service si l’application envoie uniquement des demandes d’inférence.
    • Accordez SELECT ou MODIFY sur les tables Unity Catalog en fonction des besoins d'accès aux données de l'application.

Étapes suivantes

Après avoir ajouté des ressources à votre application, référencez ces ressources dans la section env de la configuration de votre application en utilisant le champ valueFrom. Pour obtenir des instructions, consultez Définir des variables d’environnement dans une application Databricks.