次の方法で共有


Git フォルダーにアクセスするためのサービス プリンシパルを許可する

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

自動化のために Microsoft Entra ID で Azure DevOps を使用している場合は、「特定の構成手順について Git フォルダーにアクセスするための Microsoft Entra サービス プリンシパルの承認 」を参照してください。

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

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

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

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

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

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

開始する前に、次のことを確認します。

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

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

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

    出力の applicationId 値と id 値に注意してください。 次の手順で必要になります。

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

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

    <service-principal-id>を、前の手順の 15 桁のid値に置き換えます。

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

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

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

    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 資格情報を追加します。

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

    置換前のコード:

    • <git-provider>のプロバイダー(例: gitHubgitLab)
    • <git-pat> Git プロバイダーの個人用アクセス トークンを使用する
    • <git-email> 自分の Git メール アドレスを使って

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

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

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

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

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

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

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

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

次のステップ