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

自動ID管理

備考

プレビュー

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

自動ID管理機能により、IDプロバイダーからDatabricksにユーザーとグループをシームレスに追加できます。Microsoft Entra IDを使用する場合、サービスプリンシパルとネストされたグループも同期されます。自動 ID 管理が有効になっている場合、ID フェデレーション ワークスペースでユーザーとグループを直接検索し、ワークスペースに追加できます。 DatabricksはIDプロバイダーを記録のソースとして使用するため、グループメンバーシップの変更はDatabricksにも反映されます。

ワークスペースからMS Entra IDグループを追加

ユーザーは、IDプロバイダー内の任意のユーザーまたはグループとダッシュボードを共有することもできます。共有すると、それらのユーザーとグループのメンバーは、ログイン時にDatabricksアカウントに自動的に追加されます。 それらは、ダッシュボードが配置されているワークスペースのメンバーとして追加されません。ワークスペースへのアクセス権を持たないユーザーには、共有データ権限で公開されたダッシュボードの閲覧専用コピーへのアクセス権が付与されます。ダッシュボードの共有に関する詳細については、 「ダッシュボードを共有する」を参照してください。

自動ID管理が有効になっている場合、ジャストインタイム(JIT)プロビジョニングは常に有効になり、無効にすることはできません。新規ユーザーは、初回ログイン時にDatabricksに自動的にプロビジョニングされます。ユーザーの自動プロビジョニング(JIT)を参照してください。

ID管理機能のないフェデレーションワークスペースでは、自動的なID管理はサポートされていません。ID フェデレーションの詳細については、 「ID フェデレーション」を参照してください。

ユーザーとグループのステータス

自動ID管理が有効になっている場合、IDプロバイダーのユーザーとグループがアカウントコンソールとワークスペース管理者設定ページに表示されます。Microsoft Entra IDを使用する場合、サービスプリンシパルも表示されます。それらのステータスは、IDプロバイダーとDatabricks間の活動状況と状態を反映しています。

ステータス

意味

非アクティブ:使用されていません

ユーザーおよびサービスプリンシパルの場合:まだDatabricksにログインしていないIDプロバイダーのID。 グループの場合: グループはワークスペースに追加されていません。

アクティブ

DatabricksではID管理が有効になっています。

アクティブ: [IdP]から削除されました

以前はDatabricksでアクティブでしたが、IDプロバイダーから削除されました。Databricksは、次回のID同期時にこれらのユーザーを自動的に無効化します。APIsにログインまたは認証できません。

無効化済み

IDプロバイダーでIDが無効化されたか、IDプロバイダーから削除された後にDatabricksが自動的にIDを無効化しました。APIsにログインまたは認証できません。

アクティブ:[IdP]から削除済み」 というステータスラベルには、IDプロバイダーの名前が含まれています。例えば、 「アクティブ: EntraID から削除されました」 または 「アクティブ: Okta から削除されました」 など。

ヒント

セキュリティのベストプラクティスとして、Databricksは、無効 化された ユーザーおよび [IdP]から削除されたアクティブ ユーザーの個人アクセストークンを失効させることを推奨します。IDプロバイダーからユーザーが削除されると、Databricksは自動的にそのユーザーのアカウントを無効化しますが、トークンは自動的に失効させません。

自動ID管理を使用して管理されているIDは、Databricksでは 「外部」 として表示されます。外部IDはDatabricksのUIを使用して更新することはできません。

権限の共有と割り当て

自動ID管理が有効になっている場合、Databricks全体で権限を共有または割り当てる際に、IDプロバイダーからユーザーを選択できます。Microsoft Entra IDを使用する場合、サービスプリンシパルも利用可能です。

グループにおける共有行動は、資産の種類によって異なります。

  • アカウント レベルのアセット: グループは、 Databricks Apps 、 Unity Catalogオブジェクト、 AI/BIダッシュボード、 Genie Spaces、ワークスペースの割り当てなどのアカウント レベルのアセットへのアクセス許可を共有または割り当てるときに使用できます。
  • ワークスペース レベルの資産: ワークスペース レベルの資産 (ノートブック、ジョブ、 SQLウェアハウス、アラート、ファイルなど) をグループと共有するには、ワークスペース管理者はまずグループをワークスペースに直接追加する必要があります。

自動 ID 管理 vs SCIMプロビジョニング

自動 ID 管理が有効になっている場合、すべてのユーザー、グループ、およびグループ メンバーシップが ID プロバイダーからDatabricksに同期されるため、 SCIMプロビジョニングは必要ありません。 SCIMプロビジョニングを並行して実行し続ける場合、 SCIM SCIMを使用して追加された ID を引き続き管理します。 SCIMプロビジョニングを使用して追加されなかった ID は管理されません。

Databricksは、自動ID管理の利用を推奨しています。以下の表は、自動 ID 管理の機能とSCIMプロビジョニングの機能を比較しています。

機能

自動ID管理

SCIMプロビジョニング

ユーザーを同期する

同期グループ

✓ (直接会員限定)

ネストされたグループを同期する

✓ (Microsoft Entra IDのみ)

同期サービスプリンシパル

✓ (Microsoft Entra IDのみ)

Databricks内でデフォルトで利用可能

IDフェデレーションが必要です

グループメンバーシップの同期の仕組み

自動ID管理が有効になっている場合、Databricksは、ブラウザへのログイン、トークン認証、ジョブの実行など、認証および認可チェックをトリガーするアクティビティ中に、IDプロバイダーからユーザーグループメンバーシップを更新します。これにより、Databricksにおけるグループベースの権限設定が、IDプロバイダーで行われた変更と常に同期されるようになります。

Databricksがグループメンバーシップを更新する際、IDプロバイダーから推移的(ネストされた)グループメンバーシップを取得します。これは、ユーザーがグループ A のメンバーであり、グループ A がグループ B のメンバーである場合、 Databricksユーザーが両方のグループのメンバーシップを持っていると認識することを意味します。 Databricksは、Databricksに追加されたグループのメンバーシップ情報のみを取得します。IDプロバイダーから親グループの階層構造全体を同期または再構築することはありません。

ネストされたグループ同期には、Microsoft Entra IDが必要です。Oktaはネストされたグループ同期をサポートしていません。

Databricksは、アクティビティに応じて異なるスケジュールでグループメンバーシップを更新します。

  • ブラウザログイン :グループメンバーシップは、前回の同期から5分以上経過した場合に同期されます。
  • その他のアクティビティ (トークン認証やジョブの実行など):前回の同期から40分以上経過した場合、グループメンバーシップが同期されます。

ネストされたグループとサービスプリンシパル

自動ID管理が有効になっている場合、ネストされたグループのメンバーは、プロビジョニングされたグループから権限を継承します。親グループに割り当てられた権限は、グループに直接追加されたユーザーと、ネストされたグループメンバーシップを通じて所属するユーザーを含め、そのグループに属するすべてのユーザーとサービスプリンシパルに適用されます。ただし、グループ内の入れ子になったグループとサービスプリンシパルは、ダッシュボード共有を除き、アカウント内で自動的に参照できません。

サービスプリンシパルの同期とネストされたグループの同期には、Microsoft Entra IDが必要です。Oktaは、サービスプリンシパルまたはネストされたグループの同期をサポートしていません。

ネストされたグループの可視性

ネストされたグループはDatabricksで表示されます。親グループGroup-Pのメンバーである子グループGroup-Cを考えます。ワークスペースにGroup-P追加すると、 Group-PGroup-Cの両方に含まれるすべてのIDがそのワークスペースにアクセスできるようになります。アカウント管理者およびワークスペース管理者のUIでは、 Group-Cグループメンバーの詳細ページでGroup-Pメンバーとして表示されます。グループの詳細ページには、ネストされた階層の第一階層のみが表示されます。

入れ子になったグループに関する考慮事項

  • ワークスペースへのアクセス: アクセスを取得するために、ネストされたグループとサービスプリンシパルをワークスペースに直接追加する必要はありません。 ワークスペースに親グループを追加すると、そのグループのすべてのメンバーがワークスペースにアクセスできるようになります。
  • アカウント レベルのアセット: グループは、 Databricks Apps 、 Unity Catalogオブジェクト、 AI/BIダッシュボード、 Genie Spaces、ワークスペースの割り当てなどのアカウント レベルのアセットへのアクセス許可を共有または割り当てるときに使用できます。
  • アカウント グループおよびサービス プリンシパルの制限: アカウントに直接プロビジョニングされていない入れ子になったグループおよびサービス プリンシパルは、アカウント グループの制限にはカウントされません。 アカウントに明示的にプロビジョニングされたグループのみが、制限の対象となります。

例えば、IDプロバイダーには次のようなグループ構造があります。

  • Marketing-All (親グループ)
    • Marketing-US (子どもグループ)
    • Marketing-EU (子どもグループ)
    • Marketing-APAC (子どもグループ)

ワークスペース管理者がワークスペースにMarketing-Allを追加した場合:

  • アクセスが許可されました: Marketing-Allのすべてのメンバーと、そのすべての子グループ ( Marketing-USMarketing-EUMarketing-APAC ) はワークスペースにアクセスできます。例えば、 Marketing-APACのユーザーとサービスプリンシパルは認証を行い、ワークスペースを使用できます。
  • アカウント プロビジョニング: Marketing-AllのみがDatabricksアカウントに対するプロビジョニングであり、アカウント グループの制限にカウントされます。 子グループは、明示的にプロビジョニングしない限り、制限の対象にはなりません。
  • アカウント レベルのアセット: Marketing-Allとそのすべての子グループ ( Marketing-USMarketing-EUMarketing-APAC ) は、ダッシュボードやUnity Catalogのオブジェクトなどのアカウント レベルのアセットへのアクセス許可を共有または割り当てるときに使用できます。

自動ID管理を有効にする

設定手順については、ご利用のIDプロバイダーのガイドを参照してください。

自動ID管理を無効にする

自動ID管理が無効になっている場合:

  • ユーザーとサービスプリンシパルは引き続き存在します。アクセス権は保持されますが、IDプロバイダーとの同期は行われなくなります。自動ID管理を無効にした後、アカウントコンソールでユーザーとサービスプリンシパルを手動で削除または無効化できます。
  • グループがメンバーシップを失う: グループはDatabricksに残りますが、すべてのグループ メンバーが削除されます。
  • IDプロバイダーとの同期が行われていません:IDプロバイダーでの変更(ユーザーの削除やグループの更新など)は、Databricksに反映されません。
  • 権限の継承なし:自動ID管理によって管理されるユーザーは、親グループから権限を継承できません。これは、ネストされたグループベースのアクセス許可モデルに影響します。

自動 ID 管理を無効にする予定がある場合、 Databricks 、フォールバックとして事前にSCIMプロビジョニングを設定することをお勧めします。 SCIMはその後、IDとグループの同期を引き継ぐことができる。

  1. アカウント管理者として、アカウントコンソールにログインします。
  2. サイドバーで 「セキュリティ」 をクリックします。
  3. ユーザープロビジョニング」 タブで、 「自動ID管理」を 「無効」 に切り替えます。

自動ID管理イベントを監査する

自動ID管理が有効になっている場合、監査ログを使用して、自動ID管理プロセスによって実行されたID操作を追跡できます。

自動ID管理イベントの監査ログタグ

自動ID管理では、既存の監査ログイベントを利用しますが、ID同期プロセスによって自動的に実行される操作を識別するためのタグを追加します。

  • エンドポイント: "autoUserCreation" - イベントが自動ID管理プロセスから発行されたことを示します。このタグは、ユーザー操作 ( addactivateUserdeactivateUserupdateUser )、グループ操作 ( createGroupupdateGroupremoveGroup )、およびグループメンバーシップ操作 ( addPrincipalToGroupremovePrincipalFromGroup ) に表示されます。
  • groupMembershipType: "IdentityProvider" - グループメンバーシップ操作 ( addPrincipalToGroupremovePrincipalFromGroup ) に表示され、グループメンバーシップが ID プロバイダーから同期されたことを示します。

クエリ自動ID管理監査イベント

system.access.auditテーブルを照会することで、自動ID管理操作を追跡できます。例えば:

自動ID管理によって作成されたユーザーを追跡する:

SQL
SELECT
request_params.targetUserName,
event_time
FROM
system.access.audit
WHERE
action_name = "add"
AND request_params.endpoint = "autoUserCreation"

IDプロバイダーから同期されたグループメンバーシップを追跡します。

SQL
SELECT
request_params.targetGroupName,
request_params.targetUserName,
event_time
FROM
system.access.audit
WHERE
action_name IN ("addPrincipalToGroup", "removePrincipalFromGroup")
AND request_params.groupMembershipType = "IdentityProvider"

system.access.auditテーブルの詳細については、 「監査ログ システム テーブル リファレンス」を参照してください。

既知の挙動と制限事項

このセクションでは、自動ID管理を使用する際に、すぐには明らかにならない可能性のある動作について説明します。

グループの作成とワークスペースの割り当て

自動ID管理機能がIDプロバイダーからグループを同期すると、アカウントレベルで自動的にグループが作成されます。これらのイベントは、監査ログにcreateGroup操作として表示され、 endpoint: "autoUserCreation"というタグが付けられています。アカウントレベルのグループ作成は自動ですが、ワークスペースの割り当ては別の手動ステップです。 同期されたグループのメンバーは、アカウント管理者がグループをワークスペースに割り当てた後にのみ、ワークスペースへのアクセス権を取得できます。自動ID管理はグループメンバーシップを制御し、管理者はワークスペースへのアクセスを制御します。

グループ名の同期はプロアクティブではありません

IDプロバイダーでグループ名を変更しても、Databricks上のグループ名はすぐに更新されません。グループ名は、アカウント管理者がアカウントコンソールでグループの詳細ページを開いた場合にのみ同期されます。それまでは、同グループはDatabricks内で以前の名称を維持する。

自動ID管理では、SCIM同期済みのメンバーシップは削除されません。

自動 ID 管理では、最初にSCIMプロビジョニングを使用して同期されたグループ メンバーシップは削除されません。 これは、これらのメンバーシップに依存する既存のジョブや権限が壊れるのを避けるための意図的な設計です。SCIMと同期された古いメンバーシップを削除するには、 SCIM APIを使用して手動でクリーンアップしてください。

初回使用時のサービスプリンシパルプロビジョニング

Microsoft Entra IDを使用する場合、サービスプリンシパルを含むグループをDatabricksに追加しても、それらのサービスプリンシパルはプロビジョニングされません。Databricksは、トークン認証やジョブ実行など、初回使用時のみサービスプリンシパルをプロビジョニングします。サービスプリンシパルが認証を行うかジョブを実行するまで、Databricksには表示されません。

APIとTerraformを介したネストされたグループとサービスプリンシパル

このセクションは、Microsoft Entra IDを使用する場合にのみ適用されます。Oktaは、ネストされたグループまたはサービスプリンシパルの同期をサポートしていません。

Databricksアカウントに直接プロビジョニングされていない入れ子になったグループとサービス プリンシパルは、アカウント コンソール UI に表示されますが、 Databricks APIsやTerraformを介して取得または管理することはできません。 プログラムで管理するには、アカウントに明示的にプロビジョニングする必要があります。

SCIMから自動ID管理への移行時に権限は引き継がれます

SCIMプロビジョニングから自動 ID 管理に移行すると、グループは同じ内部Databricksオブジェクトのままになります。 Unity Catalog権限、ワークスペースの割り当て、その他の設定は自動的に引き継がれます。 移行中に権限が失われることはありません。