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

この記事では、Microsoft Entra ID を使用して Databricks アカウントへのプロビジョニングを設定する方法について説明します。

Databricks では、ユーザー、サービスプリンシパル、およびグループをアカウント レベルにプロビジョニングし、 Databricks内のワークスペースへのユーザーとグループの割り当てを管理することをお勧めします。 ワークスペースへのユーザーの割り当てを管理するには、ワークスペースで ID フェデレーションを有効にする必要があります

ユーザーが Microsoft Entra ID を使用してログインするには、Microsoft Entra ID から Databricks へのシングル サインオンを構成する必要があります。 「Databricks で SSO を構成する」を参照してください。

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

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

重要

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

要件

  • Databricks アカウントにはPremium プラン以上が必要です。

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

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

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

  • ユーザーが Microsoft Entra ID を使用して Databricks にログインできるようにシングル サインオンを構成します。 「Databricks で SSO を構成する」を参照してください。

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

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

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

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

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

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

注:

SCIMトークンはアカウントSCIM API /api/2.1/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 フェデレーションが有効になっているかどうかに関係なく、そのユーザーはアカウントとワークスペースから非アクティブ化されます。

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

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

    • ユーザーとグループは、Microsoft Entra ID にも存在する場合、マージされます。

    • ユーザーとグループは、Microsoft Entra ID に存在しない場合、無視されます。 Microsoft Entra ID に存在しないユーザーは、Databricks にログインできません。

  • グループ内のメンバーシップによって重複する、個別に割り当てられたユーザー権限は、ユーザーのグループメンバーシップが削除された後でも残ります。

  • アカウント コンソールを使用して Databricks アカウントからユーザーを直接削除すると、次のような影響があります。

    • 削除されたユーザーは、その Databricks アカウントとアカウント内のすべてのワークスペースにアクセスできなくなります。

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

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

  • DatabricksユーザーのEメールアドレスは更新できません。

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

  • Microsoft Entra ID のグループ名の更新は Databricks に同期されません。

  • userNameemails.value のパラメーターは一致する必要があります。不一致があると、Databricks が Microsoft Entra ID SCIM アプリケーションからのユーザー作成要求を拒否する可能性があります。 外部ユーザーやエイリアス化された電子メールなどの場合は、エンタープライズ アプリケーションのデフォルト SCIM マッピングを変更して、mail ではなく userPrincipalName を使用するようにする必要があります。

(オプション) 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 のサポートを追加します

トラブルシューティング

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

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

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

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

Microsoft Entra ID サービスプリンシパル do not sync

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

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

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

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

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