
- テナント間同期とは?
- テナント間同期でできることは?
- テナント間同期とB2Bコラボレーションの違い
- テナント間同期の前提条件
- テナント間同期の設定手順
- PowerShellでの設定例
- 注意点と制限事項
Microsoft Entra ID(旧Azure AD)では、企業が複数のテナントを持つケースやグループ会社間でIDを共有したいケースに対応するためにテナント間同期(Cross-tenant synchronization)という機能が用意されています。
従来のB2Bコラボレーションと異なり、テナント間同期を使うと他のテナントのユーザーを自動的に同期・管理できるようになります。
本記事では、この機能で「何ができるのか」「どう活用できるのか」「設定方法」をわかりやすく解説します。
テナント間同期とは?
テナント間同期とは、あるEntra IDテナント(ソース)から別のテナント(ターゲット)に対して、ユーザー情報を自動的に同期・作成する仕組みです。
従来のB2B(Business to Business)コラボレーションでは、相手テナントのユーザーは「ゲストユーザー(外部ユーザー)」として扱われました。一方、テナント間同期では、相手テナントのユーザーを自分のテナントに「B2Bユーザーとして自動登録し、属性も同期」できるのが特徴です。
主な特徴
- 別テナントのユーザー情報(名前、メールアドレス、部署など)を自動同期
- アカウントの追加・削除・属性変更も自動反映
- 同期したユーザーに対して条件付きアクセスなどEntra IDのポリシーを適用可能
- 多要素認証(MFA)は元のテナントで有効化できる
テナント間同期でできることは?
① グループ会社・子会社のID統合管理
親会社のEntra IDに子会社のユーザーを自動同期させることで、統一的なアクセス制御が可能になります。
② SaaSアプリへのシングルサインオン
同期したユーザーを使って親会社側のテナントでSaaSアプリ(Microsoft 365、Teams、SharePointなど)へのアクセスを一元化できます。
③ 管理負担の軽減
ユーザーの追加・削除・異動などの変更が発生したときに自動で同期されるため、手動登録や更新の手間が減ります。
④ ゼロトラスト戦略との親和性
同期されたユーザーにも条件付きアクセス、MFA、アクセスレビューなどのポリシーを適用でき、セキュリティレベルを統一できます。
テナント間同期とB2Bコラボレーションの違い
| 項目 | テナント間同期 | B2Bコラボレーション |
|---|---|---|
| ユーザー登録 | 自動同期 | 手動または招待リンク |
| 属性の更新 | 自動反映 | 反映されない(基本) |
| 削除・退職時 | 自動削除 | 手動で削除 |
| 管理性 | 一元管理が可能 | 限定的 |
テナント間同期の前提条件
- 双方のテナントでB2Bコラボレーションが有効であること
- ソーステナントで同期用のプロビジョニングアプリを構成すること
- ターゲットテナントで外部IDを許可する設定があること
- 管理者は「セキュリティ管理者」または「アプリケーション管理者」のロールを持っている必要があります。
- Microsoft Entra ID Premium P1 または P2 ライセンスが必要です。
テナント間同期の設定手順
実際の設定は、Entra IDポータルまたはPowerShellを利用します。
ここでは簡単な流れを紹介します。
① 接続関係(クロステナントアクセス)の設定
- Entra IDポータルで「External Identities(外部ID)」を開きます。
- 「クロステナントアクセス設定」で対象テナントを追加します。
- 受信・送信アクセスの許可ポリシーを設定します。
② プロビジョニングアプリの作成
- 「プロビジョニング」→「新しいアプリケーション」→「クロステナント同期」を選択します。
- 同期元と同期先のテナント情報を登録します。
- 同期する属性(DisplayName、Mail、Departmentなど)を設定します。
③ 同期の有効化
- 同期スケジュールを有効化(15分~数時間で反映)します。
- 同期ステータスが「成功」となります。
- ターゲットテナントでB2Bユーザーが自動作成されていることを確認します。
PowerShellでの設定例
Entra ID PowerShellモジュールを使うと自動化も可能です。
# Entra IDモジュールのインストール
Install-Module Microsoft.Graph -Scope CurrentUser
# サインイン
Connect-MgGraph -Scopes "User.ReadWrite.All","Directory.ReadWrite.All"
# 同期アプリの作成例(簡易)
New-MgSynchronizationJob -ApplicationId "xxxxx-xxxx-xxxx" `
-TemplateId "Azure2Azure" `
-ScheduleInterval "PT15M"
# 同期ポリシーなどの設定
# (詳細は環境に応じてカスタマイズ)
注意点と制限事項
- 同期できるのは「ユーザー属性」のみで、グループなどは別途設定が必要
- 同期間隔は最短で15分程度
- 同期先でのライセンス割り当ては自動化対象外(別途スクリプトなどで対応)
- テナント間の信頼関係が必須