メインコンテンツまでスキップ

サービスプリンシパルが Git フォルダにアクセスすることを承認する

サービスプリンシパルは、 Databricksで自動化されたワークフローを認証するために使用される人間以外の ID です。 このページでは、サービスプリンシパルがGitフォルダー操作にGit資格情報を使用することを承認する方法について説明します。

Databricks UI を使用して Git 資格情報を追加する

Git資格情報をサービスプリンシパルにリンクするには:

  1. ワークスペース管理者として、Databricksワークスペースにログインします。
  2. 上部のバーにあるユーザー名をクリックし、 「設定」 を選択します。
  3. [ IDとアクセス ] タブをクリックします。
  4. サービスプリンシパル の横にある [ 管理 ] をクリックします。
  5. Git認証情報を使用して更新するサービスプリンシパルを選択します。
  6. Git 統合 タブをクリックします。
  7. 「Git 資格情報の追加」 をクリックします。
  8. ドロップダウン メニューから Git プロバイダーを選択し、必須フィールドに入力します。
  9. 選択したプロバイダーに応じて、 [保存] または [リンク] をクリックします。

サービスプリンシパルは、自動化の一環としてDatabricksワークスペースGitフォルダー リソースにアクセスするときに、リンクされたGit資格情報を使用するようになりました。

Databricks CLI を使用して Git 資格情報を追加する

自動化ワークフロー用にDatabricks CLI使用してサービスプリンシパルGitアクセスを構成します。

注記

始める前に、次のことを確認してください。

Databricks CLI使用してサービスプリンシパルのGitフォルダーへの承認されたアクセスを提供するには、次の手順を実行します。

  1. ワークスペースにサービスプリンシパルを作成します。

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

    出力のapplicationIdid値をメモします。次のステップで必要になります。

  2. サービスプリンシパルのOAuthシークレットを生成します。

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

    <service-principal-id>前のステップの 15 桁のid値に置き換えます。

    出力からsecret値をコピーします。

  3. サービスプリンシパルのGitプロバイダーの資格情報を追加します。

    OAuth使用してサービスプリンシパルとして認証するようにDatabricks CLI構成します。

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

    以下のように置き換えてください。

    • <workspace-url> ワークスペースのURL
    • <application-id> ステップ1のアプリケーションIDを使用
    • <oauth-secret> ステップ 2 のOAuthシークレットを使用

    次に、Git の資格情報を追加します。

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

    以下のように置き換えてください。

    • <git-provider> プロバイダgitHubなど)または gitLab
    • <git-pat> Gitプロバイダーの個人アクセストークン
    • <git-email> Git電子メール アドレスを使用して

    一部の Git プロバイダーでは、適切に認証するために--git-usernameまたは--git-emailが必要です。たとえば、 GitHubでは、これらのうち少なくとも 1 つが必要です。

サービスプリンシパルは、リンクされた認証情報を使用してGitフォルダーにアクセスできるようになりました。

プログラムでサービスプリンシパルを取得する

Databricks SDK 、 REST APIs 、またはCLI使用して、ワークスペースのサービスプリンシパルを取得します。

ノートブックから Databricks SDK を使用するには:

  1. Databricks SDK をインストールします。 %pip install databricks-sdk --upgrade
  2. databricks.sdk.coreからApiClientをインポートします。
  3. サービスプリンシパルAPIを呼び出します。

コード例については、 Databricks SDK for Python のドキュメントを参照してください。

curl 、 Databricks CLI 、またはTerraform使用して、サービスプリンシパルをプログラムで操作することもできます。

次のステップ