Service Principal
Un Service Principal est une identité spécialisée dans Databricks, conçue pour l'automatisation et l'accès programmatique. Les Service Principal offrent un accès sécurisé et uniquement par API aux ressources Databricks pour les outils automatisés, les scripts et les plateformes CI/CD, sans dépendre des identifiants d’utilisateur individuels.
Pour savoir comment gérer les Service Principal, consultez Gérer les Service Principal.
Cette page suppose que votre Workspace a la fédération d'identités activée, ce qui est le default pour la plupart des Workspaces. Pour des informations sur les Workspaces hérités sans fédération d'identité, consultez Workspaces hérités sans fédération d'identité.
Qu'est-ce qu'un Service Principal ?
Les Service Principals donnent aux outils et scripts automatisés un accès API uniquement aux Ressources Databricks, offrant une sécurité accrue par rapport à l'utilisation de comptes utilisateur. Vous pouvez accorder et restreindre l'accès d'un Service Principal aux ressources de la même manière que vous le feriez pour un utilisateur Databricks. Par exemple, vous pouvez accorder à un Service Principal le rôle d'administrateur de compte ou d'administrateur de Workspace, accorder l'accès aux données à l'aide d'Unity Catalog, ou ajouter un Service Principal en tant que membre à un groupe.
Vous pouvez accorder aux utilisateurs, aux Service Principal et aux groupes Databricks des autorisations d'utilisation d'un Service Principal. Cela permet aux utilisateurs d'exécuter des Jobs en tant que Service Principal, plutôt qu'en tant que leur identité, ce qui empêche les Jobs d'échouer si un utilisateur quitte votre organisation ou si un groupe est modifié.
Cas d'utilisation courants
Les Service Principal sont idéaux pour les scénarios d'automatisation comme ceux qui suivent, où vous avez besoin d'un accès programmatique sécurisé et fiable aux Ressources Databricks :
Cas d'usage | Exemple |
|---|---|
pipelines CI/CD | Déployez des notebooks, des bibliothèques et des configurations automatiquement dans le cadre de vos flux de travail d'intégration et de déploiement continus. |
Jobs planifiés | Exécutez les pipelines ETL, les Jobs de traitement de données et les rapports automatisés selon un calendrier sans dépendre de comptes d'utilisateur individuels. |
Intégrations intersystèmes | Connectez les applications et services externes à Databricks pour l'ingestion de données, les Transformations ou l'analytique. |
Tests automatisés | Exécutez des tests d'intégration et validez les pipelines de données dans le cadre de votre framework de test. |
Infrastructure en tant que code | Provisionnez et gérez les Ressources Databricks à l'aide d'outils tels que Terraform, les Templates ARM ou les Declarative Automation Bundles. |
Qui peut gérer et utiliser les Service Principals ?
Pour gérer les Service Principal dans Databricks, vous devez disposer de l'un des rôles suivants :
Rôle | Capacités |
|---|---|
Administrateurs de comptes |
|
Administrateurs de Workspace |
|
Gestionnaires de Service Principal |
|
Utilisateurs du Service principal |
|
- Le créateur d'un Service Principal devient automatiquement le gestionnaire de Service Principal.
- Les utilisateurs disposant du rôle de gestionnaire de Service Principal n'héritent pas du rôle d'utilisateur de Service Principal. Si vous souhaitez utiliser le Service Principal pour exécuter des Jobs, vous devez vous attribuer explicitement le rôle d'utilisateur du Service Principal, même après avoir créé le Service Principal.
Pour des informations sur la manière d'accorder les rôles de Service Principal Manager et Service Principal User, consultez Rôles pour la gestion des Service Principals.
Synchroniser les Service Principal à votre compte Databricks depuis votre tenant Microsoft Entra ID.
Vous pouvez synchroniser automatiquement les Service Principal Microsoft Entra ID de votre tenant Microsoft Entra ID vers votre compte Databricks en utilisant la gestion automatique des identités. Databricks utilise Microsoft Entra ID comme source, de sorte que toute modification des utilisateurs ou des appartenances aux groupes est respectée dans Databricks. Consultez Gestion automatique des identités.
Le provisionnement SCIM ne prend pas en charge la synchronisation des Service Principal.
Service Principal du système et des applications
Les Service Principals système et d'application sont des Service Principals gérés par Databricks qui représentent les services internes de Databricks. Contrairement aux Service Principal que vous créez et gérez, les Service Principals système sont créés et gérés automatiquement par Databricks. Leur cycle de vie est lié à une ressource Databricks, telle qu'un compte ou un metastore, et ils ne requièrent pas de gestion administrative.
Les Service Principals système et d'application ne peuvent être utilisés qu'indirectement par le biais des fonctionnalités de la plateforme Databricks, telles que l'optimisation prédictive et le scheduled dashboard refresh. Vous ne pouvez pas créer, modifier ou usurper l'identité d'un Service Principal de système ou d'application.
Vous pourriez voir des Service Principal système et d'application dans les Logs système lorsque Databricks effectue des opérations d'arrière-plan.
Ressources supplémentaires
- Gérer les Service Principals – Créer et gérer les Service Principals
- Contrôle d'accès du Service Principal — Octroyer les rôles de gestionnaire et d'utilisateur
- Authentification pour l'automatisation Databricks - Méthodes d'authentification pour les Service Principal
- Gérer les identités – Vue d'ensemble de la gestion des identités dans Databricks
- Gestion automatique des identités – Synchronisez les Service Principal depuis Microsoft Entra ID