はじめに
Microsoft Entra テナントには、自組織のデバイスが ほかの組織のテナントにサインインできないようにする仕組みとして、テナント制限 という機能が提供されています。
テナント制限には、以下の2つのバージョンが提供されています。
-
テナント制限 v1 (TRv1)
→ プロキシサーバーで HTTPヘッダーに 許可するテナントの情報を記載しておく
→ 上記のプロキシサーバーを利用するマシンのみが、テナント制限 が適用される -
テナント制限 v2 (TRv2)
→ Microsoft Entra ID の テナント間アクセス設定 にて許可するテナントを指定
→ クライアント側の制御は3パターンあるが、いずれも上記の設定に従って動作
上記のように、TRv1 は HTTPヘッダーに許可するテナントの情報を記載し、Entra ID が認証の際にチェックしていますが、TRv2 は、クラウド側で制御する情報を一元管理するようになっている点が違います。
テナント制限とは何か?
テナント制限とはどういうものか? ってことと、機密情報の流出を防ぐうえで、テナント制限と組み合わせて考える必要があるアクセス制御はどういうものがあるのかを、以下の記事にまとめました。ぜひ こちらも参照ください。
テナント制限、条件付きアクセス、URLフィルタ を組み合わた アクセス制御
https://qiita.com/carol0226/items/3bcf4e2014c422679733
テナント制限 の しくみの違い
TRv2 は、展開のしくみが3通り提供されており、TRv1 と合わせると、以下の ①~④ のバリエーションが存在します。
① テナント制限 v1 (TRv1)
プロキシサーバー に アクセスを許可させたい テナントの情報 を設定して制御します。
アクセス先の制御は、プロキシサーバーに設定した値によって管理します。
クライアント PC に、エージェントなどは不要ですが、かならず プロキシサーバーを経由するようにします。
つまり、社内 LAN 内の PC にしか、テナント制限 を適用できません。
② テナント制限 v2 (Auth Plane TRv2)
プロキシサーバー に 自組織の テナントの ID と ポリシーID を設定して制御します。
上記の ID を使って、テナント間アクセス設定 で構成されたポリシーが適用されます(ポリシーの管理はクラウド側)
クライアント PC に、エージェントなどは不要ですが、かならず プロキシサーバーを経由するようにします。
つまり、社内 LAN 内の PC にしか、テナント制限 を適用できません。
➂ テナント制限 v2 (TRv2 on Windows)
GPO or Intune の ポリシー を使って、Windows OS が持つ テナント制限 の設定を有効化します。
このとき、テナント ID や ポリシー ID を OS に認識させることでテナント制限を行います。
上記の ID を使って、テナント間アクセス設定 で構成されたポリシーが適用されます(ポリシーの管理はクラウド側)
OS で制御しているため、世界中のインターネット配下の自社デバイスに対して、テナント制限を適用できます。
④ ユニバーサル テナント制限 v2 (Universal TRv2)
GSA の機能を使って、テナント制限 を制御します。
テナント間アクセス設定 で構成されたポリシーが適用されます(ポリシーの管理はクラウド側)
GSA の インターネットアクセス の ライセンスが必要になります。
GSA は、AVD マルチセッションには対応していない点に注意が必要です。
ポイント
テナント制限 についてネットで調べると、上記の ①~④ の情報が混在して現れてきます。
この4つは、技術的な仕組みが全く違う方法で実現しているため、この違いを理解しておかないと混乱するので注意しましょう。
| # | ①テナント 制限 v1 |
②テナント 制限 v2 Auth Plane |
➂テナント 制限 v2 on Windows |
④ユニバーサル テナント制限 v2 |
|---|---|---|---|---|
| ステップ1 クラウド側 テナント間 アクセス設定 |
なし | 必要 | 必要 | 必要 |
| ステップ2 デバイス側 有効化方法 |
プロキシ サーバ- |
プロキシ サーバ- |
OS 設定 | GSA |
| 対象デバイス | 社内 LAN で プロキシ利用 のデバイス |
社内 LAN で プロキシ利用 のデバイス |
全世界の 管理デバイス Windows |
全世界の 管理デバイス Windows macOS iOS Android |
| 月額費用 ライセンス |
無料 | Microsoft Entra P1 | Microsoft Entra P1 ※1:Intune |
Microsoft Entra P1 ※2:GSA インターネット アクセス |
| 必要な知識 | プロキシサーバー | プロキシサーバー | GPO or Intune Windows OS ※3:WDAC |
GSA |
| マルチ セッション |
対応可 | 対応可 | 対応可 | 非対応 |
| 匿名アクセス | 制御できない | ブロック可 | ブロック可 | ブロック可 |
| 難易度 ※私の主観 |
中 | 中 | 高 | 低 |
※1 = Intune でポリシー適用する場合は必要です。
※2 = Microsoft 365 のみの制御なら不要です。3rd Party 製品を制御するなら必要です。
※3 = WDAC は 旧名称、現在では App Control for Business と呼ばれています。
公開情報:テナント制限 v1 と v2 を比較する
https://learn.microsoft.com/ja-jp/entra/external-id/tenant-restrictions-v2?wt.mc_id=MVP_407731#compare-tenant-restrictions-v1-and-v2
Support Blog:テナント制限 v2 を利用してデータ流出を防止する
この記事に、Auth Plane TRv2、TRv2 on Windows、Universal TRv2 の違いについて記載されています。
https://jpazureid.github.io/blog/azure-active-directory/how-tenant-restrictions-v2-can-be-used-to-prevent-data/
テナント制限 v1 (TRv1) について
これから、新規でテナント制限を開始する場合は、テナント制限v2 (TRv2) の導入を検討してください。
TRv1 は、従来から提供されている仕組みですが、以下の Support Blog で TRv2 への移行が推奨されています。
Support Blog:テナント制限を v2 にアップグレードください
https://jpazureid.github.io/blog/azure-active-directory/upgrade-your-tenant-restrictions-to-v2/
それでも TRv1 を導入したい場合
今からでも TRv1 を検証したい・・という場合は、以下の情報を参考にしてください。
公開情報:テナントへのアクセスを制限する
https://learn.microsoft.com/ja-jp/entra/identity/enterprise-apps/tenant-restrictions?wt.mc_id=MVP_407731
Qiita @aida1971 さんの記事:Azure AD のテナント制限機能について
https://qiita.com/Aida1971/items/104d9444aa6047420b0f
くらう道 牛上さんの記事:AVDでAzureADテナント制限を試す!
https://www.cloudou.net/azure-virtual-desktop/avd040/
Broadcom社 PROXYSG の設定方法
https://knowledge.broadcom.com/external/article/169870/controlling-office-365-access-using-tena.html
Paloalto社 設定方法
https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000sayjCAA
テナント制限 v2 (TRv2) を開始するには
テナント制限 v2 を利用するためのステップは、以下の2ステップの手順が必要です。
- ステップ1:クラウド側の構成(テナント間アクセス設定)
- ステップ2:デバイスへの適用
ステップ1:クラウド側の構成(テナント間アクセス設定)
テナント制限 (TRv2) の場合は、ステップ1 の構成が必要です(TRv1 では不要です)
以下の私の記事を参考に Microsoft Entra ID で テナント制限 (TRv2) を有効化してください。
[Entra ID] テナント制限 (TRv2) を有効化する
https://qiita.com/carol0226/items/83ebd402c7cccc745685
ポイント
上記の記事の 第2章(特定のパートナー用にテナント制限 V2 を構成する)に、特定のテナントのみを許可するための説明も記載してあります。
ステップ2:デバイスへの適用
クラウド側の設定に加えて、デバイスに適用するための構成が必要です。
以下の いずれか の方法で、クライアント側のテナント制限を有効化することができます。
① テナント制限 v1 (TRv1) → プロキシサーバーで設定
② テナント制限 v2 (Auth Plane TRv2) → プロキシサーバーで設定
➂ テナント制限 v2 (TRv2 on Windows) → OS へのポリシー適用で設定
④ ユニバーサル テナント制限 v2 (Universal TRv2) → GSA の導入によって実現
② テナント制限 v2 (Auth Plane TRv2) の手順
私は、まだ この方法での検証実績がありません。
なお、新しく TRv2 を構成するための具体的に示された手順をネットでも探してみましたが、見当たりませんでした。
そのため、以下の公開情報を元に、頑張るしか無さそうです。
公開情報:オプション 2: 企業プロキシでテナント制限 v2 を設定する
https://learn.microsoft.com/ja-jp/entra/external-id/tenant-restrictions-v2?wt.mc_id=MVP_407731#option-2-set-up-tenant-restrictions-v2-on-your-corporate-proxy
ヒントになりそうなのは、一旦 TRv1 を構成してから、以下の移行手順を実施することが成功への近道になりそうです。
公開情報:プロキシでテナント制限 v1 のポリシーを v2 に移行する
https://learn.microsoft.com/ja-jp/entra/external-id/tenant-restrictions-v2?wt.mc_id=MVP_407731#migrate-tenant-restrictions-v1-policies-to-v2-on-the-proxy
Broadcom社 PROXYSG の設定方法
この製品であれば、TRv2 についての記載があるので、なんとかなるかもしれません。
https://knowledge.broadcom.com/external/article/169870/controlling-office-365-access-using-tena.html
➂ テナント制限 v2 (TRv2 on Windows) の手順
実現方法は、以下の私の記事で 詳細に説明していますので、これを参考に 導入を試してみてください。
厳密に制御するためには、WDAC ポリシーを使う必要があるため、難易度は高めです。
Microsoft Entra テナント制限v2 で 外部テナントへのアクセスをブロックする
https://qiita.com/carol0226/items/f0d9bcb8adffb66d49f2
公開情報:オプション 3: Windows マネージド デバイスでテナント制限を有効にする
https://learn.microsoft.com/ja-jp/entra/external-id/tenant-restrictions-v2?wt.mc_id=MVP_407731#option-3-enable-tenant-restrictions-on-windows-managed-devices-preview
なお、上記の公開情報には、以下の注意書きがあります。Universal TRv2 が正式提供されるまでの一時的なソリューションである旨が記載されているため、新たな導入シーンでは Universal TRv2 の利用を検討した方が良いと思われます。

しかしながら、Universal TRv2 は、Azure Virtual Desktop (AVD) のマルチセッションに対応していません。
そのため、AVD でテナント制限を行いたい場合は、引き続き TRv2 on Windows も有効な選択肢です。
私の記事の通りに構成すれば、保護できない .NET , Chrome , Firefox は WDAC でブロックして、ちゃんと 穴の無いテナント制限ができるのに・・・。できれば TRv2 on Windows は、サービス継続してほしい。
④ ユニバーサル テナント制限 (Universal TRv2) の手順
実現方法は、以下の私の記事で 詳細に説明していますので、これを参考に 導入を試してみてください。
GSA さえ導入されていれば、あとは 非常に簡単に テナント制限 を利用することが可能です。
[GSA:MSTraffic] ユニバーサルテナント制限 (Universal TRv2)
https://qiita.com/carol0226/items/0a724e2fca95962c8eb6
公開情報:オプション 1: Microsoft Entra Global Secure Access の一部としてユニバーサル テナント制限 v2 を使用する
https://learn.microsoft.com/ja-jp/entra/external-id/tenant-restrictions-v2?wt.mc_id=MVP_407731#option-1-use-universal-tenant-restrictions-v2-as-part-of-microsoft-entra-global-secure-access
公開情報:全体テナントの制限を有効にする
https://learn.microsoft.com/ja-jp/entra/global-secure-access/how-to-universal-tenant-restrictions?wt.mc_id=MVP_407731

