Aller au contenu principal

Autoriser un Service Principal à accéder aux dossiers Git

Un Service Principal est une identité non humaine utilisée pour authentifier les workflows automatisés dans Databricks. Lorsque vous automatisez les Opérations de dossier Git, telles que l'extraction du dernier code avant l'exécution d'un Job ou la mise à jour programmatique de Notebooks dans un pipeline CI/CD, le Service Principal a besoin de ses propres identifiants Git pour accéder à votre fournisseur Git. Cette page explique comment Link des identifiants Git à un Service Principal à l'aide de l'interface utilisateur ou de la CLI.

astuce

Utilisez un service principal pour les workflows automatisés ou partagés, tels que les pipelines CI/CD et les jobs planifiés. Si vous travaillez de manière interactive en tant qu'utilisateur individuel, utilisez plutôt vos propres identifiants Git. Voir Connecter votre fournisseur Git à Databricks.

Ajouter des identifiants Git à l'aide de l'interface utilisateur de Databricks

Pour lier des identifiants Git à un Service Principal :

  1. En tant qu’administrateur de workspace, connectez-vous au workspace Databricks.
  2. Cliquez sur votre nom d'utilisateur dans la barre supérieure et sélectionnez Settings .
  3. Cliquez sur l'onglet **Identity and access tab**.
  4. À côté de **Service principals**, cliquez sur **Gérer**.
  5. Sélectionnez le Service Principal que vous souhaitez mettre à jour avec les informations d'identification Git.
  6. Cliquez sur l'onglet Intégration Git .
  7. Cliquez sur Ajouter un identifiant Git .
  8. Choisissez le fournisseur Git dans le menu déroulant et remplissez les champs requis.
  9. Cliquez sur Enregistrer ou sur Link , selon le fournisseur que vous avez choisi.

Le Service Principal utilise désormais les informations d'identification Git liées lors de l'accès aux Ressources du dossier Git de votre Workspace Databricks dans le cadre de votre automatisation.

Ajoutez les identifiants Git à l'aide de la Databricks CLI

Configurez l'accès Git du Service Principal en utilisant l'interface CLI Databricks pour les workflows d'automatisation.

remarque

Avant de commencer, vérifiez que vous disposez de :

Pour fournir un accès autorisé à vos dossiers Git pour les Service Principal à l'aide de l'interface CLI de Databricks :

  1. Créez un service principal dans votre workspace :

    Bash
    databricks service-principals create \
    --display-name "Git Automation Service Principal"

    Notez les valeurs applicationId et id de la sortie. Vous en aurez besoin lors des prochaines étapes.

  2. Générer un secret OAuth pour le Service Principal :

    Bash
    databricks service-principal-secrets-proxy create \
    <service-principal-id>

    Remplacez <service-principal-id> par la valeur id à 15 chiffres de l'étape précédente.

    Copiez la valeur secret de la sortie.

  3. Ajoutez les informations d’identification du fournisseur Git pour le Service Principal.

    Configurez le CLI Databricks pour vous authentifier en tant que Service Principal à l'aide d'OAuth :

    Bash
    export DATABRICKS_HOST=<workspace-url>
    export DATABRICKS_CLIENT_ID=<application-id>
    export DATABRICKS_CLIENT_SECRET=<oauth-secret>

    Remplacer :

    • <workspace-url> avec votre URL de workspace
    • <application-id> avec l'ID de l'application de l'étape 1
    • <oauth-secret> avec le secret OAuth de l'étape 2

    Ajoutez ensuite les identifiants Git :

    Bash
    databricks git-credentials create <git-provider> \
    --personal-access-token <git-pat> \
    --git-email <git-email>

    Remplacer :

    • <git-provider> avec votre fournisseur, tel que gitHub ou gitLab
    • <git-pat> avec votre jeton d'accès personnel de fournisseur Git
    • <git-email> avec votre adresse e-mail Git

    Certains fournisseurs Git nécessitent --git-username ou --git-email pour s'authentifier correctement. GitHub, par exemple, nécessite au moins un de ces paramètres.

Le Service Principal peut désormais accéder aux dossiers Git en utilisant les informations d'identification liées.

Récupérer les Principals de service par programme

Récupérez les Service Principal de votre Workspace à l'aide du Databricks SDK, des API REST ou de la CLI.

Pour utiliser le Databricks SDK à partir d'un notebook :

  1. Installer le Databricks SDK : %pip install databricks-sdk --upgrade
  2. Importez ApiClient depuis databricks.sdk.core.
  3. Appelez l'API des Service Principal.

Pour des exemples de code, consultez la documentation Databricks SDK pour Python.

Vous pouvez également utiliser curl, la CLI Databricks ou Terraform pour travailler avec les Service Principal par programmation.

Ressources supplémentaires