Microsoft Entra ID (Azure Active Directory) を使用して SCIM プロビジョニングを構成する

この記事では、Microsoft Entra ID (旧 Azure Active Directory) を使用して Databricks へのプロビジョニングを設定する方法について説明します。

Databricks アカウント レベルまたは Databricks ワークスペース レベルで Microsoft Entra ID を使用して Databricks へのプロビジョニングを設定できます。

Databricks 、ユーザー、サービス プリンシパル、およびグループをアカウント レベルに設定し、 Databricks内でユーザーとグループのワークスペースへの割り当てを管理することをお勧めします。 ユーザーのワークスペースへの割り当てを管理するには、ワークスペースで ID フェデレーションを有効にする必要があります。 ID フェデレーションが有効になっていないワークスペースがある場合は、引き続きそれらのワークスペースにユーザー、サービス プリンシパル、およびグループを直接追加する必要があります。

Databricksユーザーは、Google クラウド Identity アカウント (または GSuite アカウント) を使用して アカウント および ワークスペース に対して認証を行います。シングル サインオンをご覧ください。 Microsoft Entra ID を使用してアカウントまたはワークスペースにユーザーをログインする場合、そのユーザーは認証のために Google クラウド Identity アカウントも持っている必要があります。

Microsoft Entra ID を使用して Databricks アカウントに ID をプロビジョニングする

SCIM プロビジョニング コネクタを使用して、Microsoft Entra ID テナントから Databricks にアカウント レベルのユーザーとグループを同期できます。

重要

ID をワークスペースに直接同期する SCIM コネクタが既にある場合は、アカウント レベルの SCIM コネクタが有効になっているときに、それらの SCIM コネクタを無効にする必要があります。 「ワークスペース レベルの SCIM プロビジョニングをアカウント レベルに移行する」を参照してください。

要件

  • Databricks アカウントにはプレミアム プランが必要です。

  • Microsoft Entra ID でクラウド アプリケーション管理者の役割を持っている必要があります。

  • グループをプロビジョニングするには、Microsoft Entra ID アカウントが Premium エディション アカウントである必要があります。 ユーザーのプロビジョニングは、どの Microsoft Entra ID エディションでも利用できます。

  • Databricksアカウント管理者である必要があります。

ステップ 1: Databricksを構成する

  1. Databricks アカウント管理者として、Databricksアカウント コンソールにログインします。

  2. ユーザー設定アイコン 設定 」をクリックします 。

  3. [ユーザープロビジョニング]をクリックします。

  4. [ユーザー プロビジョニングの設定] をクリックします。

SCIM トークンとアカウント SCIM URL をコピーします。 これらを使用して、Microsoft Entra ID アプリケーションを構成します。

注:

SCIMトークンはアカウントSCIM API /api/2.0/accounts/{account_id}/scim/v2/ に制限されており、他のDatabricks REST APIsへの認証には使用できません。

ステップ2: エンタープライズアプリケーションを構成する

これらの手順では、Azure ポータルでエンタープライズ アプリケーションを作成し、そのアプリケーションをプロビジョニングに使用する方法について説明します。 既存のエンタープライズ アプリケーションがある場合は、 Microsoft Graph を使用して SCIM プロビジョニングを自動化するように変更できます。 これにより、Azure Portal で別のプロビジョニング アプリケーションを使用する必要がなくなります。

Microsoft Entra ID がユーザーとグループをDatabricksに同期できるようにするには、次の手順に従ってください。 この構成は、ユーザーとグループをワークスペースに同期するために作成した構成とは別です。

  1. Azure ポータルで、 Microsoft Entra ID > エンタープライズ アプリケーションに移動します。

  2. アプリケーションリストの上にある [+ 新しいアプリケーション ] をクリックします。 [ギャラリーから追加]で、 Azure Databricks SCIMモル Connectorを検索して選択します。

  3. アプリケーションの [名前 ] を入力し、[ 追加] をクリックします。

  4. [管理]メニューで、 [プロビジョニング] をクリックします。

  5. Modeを自動に設定します。

  6. SCIM API エンドポイント URL を、先ほどコピーしたアカウント SCIM URL に設定します。

  7. Secret を、先ほど生成したDatabricks SCIMトークンに設定します。

  8. [接続のテスト]をクリックし、プロビジョニングを有効にするために資格情報が承認されていることを確認するメッセージを待ちます。

  9. [保存]をクリックします。

ステップ3: アプリケーションにユーザーとグループを割り当てる

SCIM アプリケーションに割り当てられたユーザーとグループは、Databricks アカウントにプロビジョニングされます。 既存の Databricks ワークスペースがある場合、Databricks では、それらのワークスペース内の既存のすべてのユーザーとグループを SCIM アプリケーションに追加することをお勧めします。

  1. [>プロパティの管理] に移動します。

  2. 「割り当てが必要」「いいえ」に設定します。Databricks では、すべてのユーザーが Databricks アカウントにサインインできるこのオプションを推奨しています。

  3. [管理] > [プロビジョニング]に移動します。

  4. Microsoft Entra ID ユーザーとグループを Databricks に同期するには、プロビジョニング ステータスの切り替えを[オン]に設定します。

  5. [保存]をクリックします。

  6. [管理] > [ユーザーとグループ]に移動します。

  7. [ユーザー/グループの追加]をクリックし、ユーザーとグループを選択して、 [割り当て]ボタンをクリックします。

  8. 数分待ってから、ユーザーとグループが Databricks アカウントに存在することを確認します。

追加して割り当てたユーザーとグループは、Microsoft Entra ID が次の同期をスケジュールすると、Databricks アカウントに自動的にプロビジョニングされます。

注:

アカウント レベルの SCIM アプリケーションからユーザーを削除すると、ID フェデレーションが有効になっているかどうかに関係なく、そのユーザーはアカウントとワークスペースから非アクティブ化されます。

Microsoft Entra ID (レガシ) を使用して Databricks ワークスペースに ID をプロビジョニングする

プレビュー

この機能はパブリックプレビュー段階です。

ID フェデレーションが有効になっていないワークスペースがある場合は、それらのワークスペースにユーザー、サービス プリンシパル、およびグループを直接追加する必要があります。 このセクションでは、その方法について説明します。

次の例では、 <databricks-instance> Databricks デプロイメントのワークスペース URLに置き換えます。

要件

  • Databricks アカウントにはプレミアム プランが必要です。

  • Microsoft Entra ID でクラウド アプリケーション管理者の役割を持っている必要があります。

  • グループをプロビジョニングするには、Microsoft Entra ID アカウントが Premium エディション アカウントである必要があります。 ユーザーのプロビジョニングは、どの Microsoft Entra ID エディションでも利用できます。

  • Databricks ワークスペース管理者である必要があります。

ステップ 1: エンタープライズ アプリケーションを作成し、 Databricks SCIM APIに接続する

Entra ID を使用してDatabricks ワークスペースに直接アプライアンスを設定するには、 ワークスペースごとにエンタープライズMicrosoftDatabricks アプリケーションを作成します。

これらの手順では、Azure ポータルでエンタープライズ アプリケーションを作成し、そのアプリケーションをプロビジョニングに使用する方法について説明します。 既存のエンタープライズ アプリケーションがある場合は、 Microsoft Graph を使用して SCIM プロビジョニングを自動化するように変更できます。 これにより、Azure Portal で別のプロビジョニング アプリケーションを使用する必要がなくなります。

  1. ワークスペース管理者として、Databricks ワークスペースにログインします。

  2. 個人アクセストークンを生成してコピーします。 このトークンは、後続のステップでMicrosoft Entra ID に提供されます。

    重要

    Microsoft Entra ID エンタープライズ アプリケーションによって管理されていないDatabricks ワークスペース管理者としてこのトークンを生成します。 個人のアクセストークンを所有するDatabricks管理者ユーザーがMicrosoft Entra ID を使用してプロビジョニング解除されると、 SCIMアプリケーションは無効になります。

  3. Azure ポータルで、 Microsoft Entra ID > エンタープライズ アプリケーションに移動します。

  4. アプリケーションリストの上にある [+ 新しいアプリケーション ] をクリックします。 [ギャラリーから追加]で、 Azure Databricks SCIMコネクタを検索して選択します。

  5. アプリケーションの [名前 ] を入力し、[ 追加] をクリックします。 管理者が見つけやすい名前 ( <workspace-name>-provisioningなど) を使用します。

  6. [管理]メニューで、 [プロビジョニング] をクリックします。

  7. Mode自動に設定します。

  8. SCIM API エンドポイント URL を入力します。 ワークスペース URL に/api/2.0/preview/scimを追加します:

    https://<databricks-instance>/api/2.0/preview/scim
    

    <databricks-instance>を Databricks デプロイメントのワークスペース URLに置き換えます。 「ワークスペース オブジェクトの識別子を取得する」を参照してください。

  9. Secret を、ステップ 1 で生成したDatabricks個人アクセストークンに設定します。

  10. [接続のテスト]をクリックし、プロビジョニングを有効にするために資格情報が承認されていることを確認するメッセージを待ちます。

  11. オプションで、 SCIMエラーに関する重大なエラーの通知を受信するための通知 E メールを入力します。

  12. [保存]をクリックします。

ステップ2: アプリケーションにユーザーとグループを割り当てる

  1. [>プロパティの管理] に移動します。

  2. [割り当てが必要] を [はい] に設定します。Databricks では、エンタープライズ アプリケーションに割り当てられたユーザーとグループのみを同期するこのオプションを推奨しています。

  3. [管理] > [プロビジョニング]に移動します。

  4. Microsoft Entra ID ユーザーとグループを Databricks に同期するには、プロビジョニング ステータスの切り替えを[オン]に設定します。

  5. [保存]をクリックします。

  6. [管理] > [ユーザーとグループ]に移動します。

  7. [ユーザー/グループの追加]をクリックし、ユーザーとグループを選択して、 [割り当て]ボタンをクリックします。

  8. 数分待ってから、ユーザーとグループが Databricks アカウントに存在することを確認します。

今後、追加して割り当てたユーザーとグループは、Microsoft Entra ID が次回の同期をスケジュールしたときに自動的にプロビジョニングされます。

重要

Azure DatabricksSCIMモジュール DatabricksConnector アプリケーションを構成するために個人のアクセストークンが使用された ワークスペース管理者を割り当てないでください。

(オプション) Microsoft Graph を使用して SCIM プロビジョニングを自動化する

Microsoft Graphには、SCIM プロビジョニング コネクタ アプリケーションを構成する代わりに、アプリケーションに統合して、Databricks アカウントまたはワークスペースへのユーザーとグループのプロビジョニングを自動化できる認証および承認ライブラリが含まれています。

  1. アプリケーションを Microsoft Graph に登録するための手順に従います。 アプリケーションIDとアプリケーションのテナントIDをメモします。

  2. アプリケーションの [概要] ページに移動します。 そのページで、次の操作を行います。

    1. アプリケーションのクライアント シークレットを構成し、シークレットをメモします。

    2. アプリケーションに次のアクセス許可を付与します。

      • Application.ReadWrite.All

      • Application.ReadWrite.OwnedBy

  3. Microsoft Entra ID 管理者に管理者の同意を付与するよう依頼します。

  4. アプリケーションのコードを更新して、 Microsoft Graph のサポートを追加します

プロビジョニングのヒント

  • プロビジョニングを有効にする前に Databricks ワークスペースに存在していたユーザーとグループは、プロビジョニングの同期時に次の動作を示します。

    • Microsoft Entra IDにも存在する場合は統合されます

    • Microsoft Entra IDに存在しない場合は無視されます

  • 個別に割り当てられ、グループのメンバーシップを通じて複製されたユーザー権限は、ユーザーのグループ メンバーシップが削除された後も残ります。

  • Databricks ワークスペース管理者設定ページを使用して、Databricks ワークスペースから直接ユーザーを削除します。

    • そのDatabricksスペースへのアクセスは失われますが、他のDatabricksワークスペースには引き続きアクセスできる可能性があります。

    • エンタープライズ アプリケーションに残っている場合でも、Microsoft Entra ID プロビジョニングを使用して再度同期されることはありません。

  • プロビジョニングを有効にするとすぐに、最初の Microsoft Entra ID 同期がトリガーされます。 後続の同期は、アプリケーション内のユーザーとグループの数に応じて、20 ~ 40 分ごとにトリガーされます。 Microsoft Entra ID ドキュメントのプロビジョニング概要レポートを参照してください。

  • Databricksユーザーのユーザー名または電子メール アドレスを更新することはできません。

  • adminsグループは Databricks で予約されているグループであり、削除できません。

  • DatabricksグループAPIまたはグループ UIを使用して、任意のDatabricksワークスペース グループのメンバーのリストを取得できます。

  • <entra-service-principal>Azure Databricks SCIM プロビジョニング コネクタ アプリケーションからネストされたグループまたは を同期することはできません。Databricksでは、エンタープライズ アプリケーションを使用してユーザーとグループを同期し、 Databricks内でネストされたグループとサービス プリンシパルを管理することをお勧めします。 ただし、ネストされたグループまたは を同期するために、 Databricks Terraform プロバイダー または Databricks SCIM API を対象とするカスタム<entra-service-principal> スクリプトを使用することもできます。

トラブルシューティング

ユーザーとグループは同期されません

  • Azure Databricks SCIM プロビジョニング コネクタアプリケーションを使用している場合:

    • ワークスペース レベル トークンの場合: Databricks管理者設定ページで、Databricks トークンAzure DatabricksSCIM Connector アプリケーションによって個人のアクセス トークンが使用されている ユーザーがまだ のワークスペース管理者ユーザーであり、トークンがまだ有効であることを確認します。Databricks

    • アカウント レベルのプロビジョニングの場合: アカウント コンソールで、プロビジョニングの設定に使用された Databricks SCIM トークンがまだ有効であることを確認します。

  • ネストされたグループは Microsoft Entra ID 自動プロビジョニングではサポートされていないため、同期しないでください。 詳細については、 この FAQ を参照してください。

<entra-service-principal> が同期されない

  • Azure Databricks SCIMコネクタアプリケーションは、サービスプリンシパルの同期をサポートしていません。

最初の同期後、ユーザーとグループは同期を停止します

Azure Databricks SCIM プロビジョニング コネクタアプリケーションを使用している場合: 最初の同期後、ユーザーまたはグループの割り当てを変更しても、Microsoft Entra ID はすぐには同期されません。 ユーザーとグループの数に基づいて、遅延後にアプリケーションとの同期をスケジュールします。 即時同期を要求するには、エンタープライズ アプリケーションの[管理] > [プロビジョニング]に移動し、 [現在の状態をクリアして同期を再開] を選択します。

Microsoft Entra ID プロビジョニング サービスの IP 範囲にアクセスできません

Microsoft Entra ID プロビジョニング サービスは、特定の IP 範囲で動作します。 ネットワーク アクセスを制限する必要がある場合は、この IP 範囲ファイルAzureActiveDirectory IP アドレスからのトラフィックを許可する必要があります。詳細については、 「IP 範囲」を参照してください。