Microsoft Entra ID を構成して、ID の自動管理を実現する
プレビュー
この機能は パブリック プレビュー段階です。
このページでは、自動 ID 管理を使用して、プロビジョニング ユーザー、グループにMicrosoft Entra ID を構成し、 Databricksアカウントにサービスプリンシパルを構成する方法について説明します。 Databricks 、 Microsoft Graph APIを使用して、ユーザー、グループ、サービス プリンシパル、およびグループ メンバーシップ データをMicrosoft Entra ID テナントから読み取ります。 自動ID管理を有効にするには、フェデレーション資格情報を使用して新しいMicrosoft Entra IDアプリケーションを登録し、 SSOアプリケーションに対する読み取り権限を付与する必要があります。
始める前に
- Databricksのアカウント管理者である必要があります。
- Microsoft Entra IDの管理者権限が必要です。
- 同じMicrosoft Entra ID テナントの OIDC を使用してSSOを構成する必要があります。
OIDC を使用してSSOが構成されていない場合、または別のMicrosoft Entra ID テナントを使用する必要がある場合は、 Databricksアカウント チームにお問い合わせください。
ステップ 1: SSOアプリを見つける
DatabricksアカウントのSSOを構成するために使用されるMicrosoft Entra ID アプリケーションを見つけます。 残りのステップ全体でこのアプリケーションを使用します。
- Azure ポータルで、 [Microsoft Entra ID] > [管理] > [アプリの登録] > [すべてのアプリケーション] に移動し、Databricks アカウントの SSO を設定するために使用したアプリを検索します。
- 概要ページで、 アプリケーションID を確認してください。この値はステップ 5 で使用します。
ステップ 2: フェデレーション資格情報を作成する
DatabricksがSSOアプリケーションとして認証できるようにするフェデレーション認証情報を作成します。
- アカウント管理者として、アカウントコンソールにログインします。
- サイドバーで 「セキュリティ」 をクリックします。
- 「ユーザープロビジョニング」 タブをクリックし、 「自動ID管理」 セクションの 「構成」を クリックします。
- ダイアログに表示されている 発行者 と 対象者の 値を確認してください。
- Azure portal で、ステップ 1 のSSOアプリの登録に移動します。
- [管理] > [証明書とシークレット] をクリックします。
- 「フェデレーション資格情報」 タブを選択し、 「資格情報の追加」 をクリックします。
- フェデレーション認証情報のシナリオを 「その他の発行者」 に設定します。
- [発行者] には、 Databricksアカウント コンソールからの値を入力します。
- 「タイプ」 で 「明示的な主体識別子」 を選択します。
- [Value] に、 Databricksアカウント コンソールからの Subject 値を入力します。
- 認証情報の詳細 に、 名前 を入力してください。その他の値はすべて変更せずに、 「追加」 をクリックしてください。
ステップ 3: 読み取り権限を付与する
Microsoft Entra ID の管理者は、SSO アプリケーションに対して以下のアプリケーションレベルの権限を付与する必要があります。
権限 | 目的 |
|---|---|
| Databricksがユーザーを照会し、その属性を読み取ることを可能にする |
| Databricksがグループを照会し、その属性を読み取ることを可能にする |
| Databricksがサービスプリンシパルを照会し、その属性を読み取ることを可能にする。 |
| Databricksがグループメンバーシップを照会できるようにします |
権限を付与するには:
- Azureポータルで、 SSOアプリ登録に移動します。1 をクリックし、 [管理] > APIアクセス許可] > [アクセス許可の追加] をクリックします。
- Microsoft Graph > アプリケーションのアクセス許可 を選択し、上記にリストされている各アクセス許可を検索して選択します。
- 「管理者の同意を与える」 をクリックしてください。
権限を割り当てた後、「…に対して権限が付与されていません」という警告メッセージが表示される場合があります。これらの警告を解消するには、Microsoft Entra IDの管理者が 「管理者の同意を付与する」 をクリックする必要があります。このボタンは、必要な権限を持つ管理者のみに表示されます。
ステップ 4: グループの主張を有効にする
グループ クレームを有効にすると、 Databricksログイン時にSSO OAuthトークンからグループ メンバーシップを取得できるようになります。
- Azure portal で、ステップ 1 のSSOアプリの登録に移動します。
- [管理] > [トークン設定] > [グループクレームの追加] をクリックします。
- すべてのグループ を選択し、 「追加」 をクリックします。
ステップ 5: Databricksで自動 ID 管理を有効にする
-
アカウント管理者として、アカウントコンソールにログインします。
-
サイドバーで 「セキュリティ」 をクリックします。
-
「ユーザープロビジョニング」 タブをクリックし、 「自動ID管理」 セクションの 「構成」を クリックします。
-
Client ID をステップ 1 のSSOアプリの アプリケーション ID に設定します。
-
「接続テスト」 をクリックしてください。フェデレーション認証情報と権限が正しく設定されていれば、テストは合格します。
-
「AIMを有効にする」 をクリックしてください。
変更が反映されるまでには5分から10分かかります。
Databricks外部IDおよびMicrosoft Entra IDオブジェクトID
Databricksは、Microsoft Entra ID ObjectId IDとグループメンバーシップの同期のための信頼できるリンクとして使用し、 externalIdフィールドをObjectIdと一致するように毎日定期的に更新します。Databricksは、複数のプロビジョニング方法を混在させることを推奨していません。自動 ID 管理とSCIMプロビジョニングの両方を介して同じ ID を追加すると、エントリの重複と権限の競合が発生します。 Microsoft Entra ID をミラーリングするグループ メンバーシップを使用して、自動 ID 管理を真実の単一ソースとして使用します。
Databricksで外部IDを指定することで、これらの重複するIDを統合できます。アカウントユーザー、アカウントサービスプリンシパル、またはアカウントグループAPIを使用してプリンシパルを更新し、Microsoft Entra ID objectId externalIdフィールドに追加します。
externalIdは時間の経過とともに更新される可能性があるため、DatabricksはexternalIdフィールドに依存するカスタムワークフローを使用しないことを強く推奨します。