テナント制限、条件付きアクセス、URLフィルタ を組み合わた アクセス制御

# はじめに
「自社内の機密情報を外部流出させない」というテーマでセキュリティを考えたとき、よく「テナント制限」「条件付きアクセス」「URLフィルタ」というキーワードを耳にします。
この３つの機能は、どう関わっているのか？
いずれかを使えばよいのか？
・・・がイマイチ良くわからないことがあると思ったので、まとめて記事にしてみました。

---

# テナント制限、条件付きアクセス、URLフィルタ の違い
わかりやすく図に描いてみました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1619637/a6763276-3fdd-5384-bc3f-dcd3d3421eed.png)

「テナント制限」「条件付きアクセス」「URLフィルタ」は、似たような機能を提供していように見えて、まったく違った技術で 異なる目的を持っています。

---

## URLフィルタ とは？
「URLフィルタ」は、Firewall製品や プロキシサーバーを使って、URL単位で アクセスを許可・ブロックします。URLごとの制御になるので 利用させたいサイトかどうかを判断して制御することになります。

Microsoft 365 (旧名称：Office 365) の場合は、https://www.office.com/ というアドレスが使われるため、https://www.office.com/ を許可し その他の URL をブロックすることで 自社端末から 許可された外部サイトのみの利用に制限することが可能です。

:::note warn
URLフィルタ の場合は、この URL を許可するか？ ブロックするか？ の制御しかできません。
機密情報流出の防止策として、他社テナントの Microsoft 365 を使わせたくない場合に、URLフィルタでブロックすれば防止はできますが、自社テナントで Microsoft 365 を利用したい場合は、URL でブロックするわけにはいかなくなります。
:::

---

## テナント制限 とは？
URLフィルタによって、自社端末から、https://www.office.com/ へのアクセスは許可されていれば、サイトへアクセスして サインインすることが可能です。
しかし、この「サインイン」をするときに、自社以外のアカウントでサインインすることも出来てしまいます。

そのため、自社内のドキュメントを 他社契約の Mirosoft 365 サービス（SharePoint、Teams、Exchangeメール、OneDrive）を使って、外部へ流出し放題・・・ということになってしまいます。

自社端末には 自社契約の Microsoft 365 を利用させ、かつ 他社契約の Microsoft 365 は使わせないためには、「URLフィルタ」では実現不可能なので、「テナント制限」の活用が効果的です。

:::note warn
テナント制限だけでは、外部の端末からテナントへのサインインは制御できないため、外部端末経由での機密情報の流出は防止できません。これは 条件付きアクセスで制御します。
:::

---

## 条件付きアクセス とは？
条件外の環境（端末、ユーザー、場所）から、自社のテナントへサインインすることを制限する機能です。

そのため、社内LANにつながっている端末や、社員用に支給した在宅用端末のみ テナントへのアクセスを許可し、それ以外の 外部の端末からのアクセスはブロックすることも可能です。

:::note warn
条件付きアクセスだけでは、自社端末から 外部のテナントへの制御はできないため、外部テナントを使って 自社端末経由で 機密情報の持ち出しが出来てしまいます。これは、テナント制限で制御します。
:::

---

## 組み合わせて利用することの必要性
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1619637/1e9fa8f0-d949-f8b1-c4d9-4ca48e50256d.png)

「URLフィルタ」「テナント制限」「条件付きアクセス」は、異なる技術で機能しており、役目も違っていますが、目的に応じて 各機能を 組み合わせて活用することが必要になります。
図の紫色のところを目指していく感じです。

組み合わせて利用することによって、自社の端末は 許可したサイトだけにアクセスさせ、かつ自社テナントの Microsoft 365 にサインインさせ、自社テナントには 自社端末からのみ、アクセスを許可する・・・それ以外のアクセスは 全てブロックするということが実現可能になります。その結果 社内の機密情報を ネットワークを使って 外部に流出することを困難にすることができます。

---

# テナント制限 を利用するには？
テナント制限には、v1 と v2 が存在します。
v1 と v2 の違いや、テナント制限 を利用するための方法などを 以下の 私の記事で別途 解説しています。
ぜひ、参照ください！

https://qiita.com/carol0226/items/a5d11103506cee9e00fb

---

# 条件付きアクセス を利用するには？
テナントへアクセスできる条件を定義しコントロールできます。

（条件付きアクセス:場所ごとにアクセスをブロックする）
以下のURLの方法で、社内LANに接続された端末に関して、一律でテナントへのアクセスを許可し、それ以外の場所から テナントへのアクセスをブロックさせられます。
https://learn.microsoft.com/ja-jp/azure/active-directory/conditional-access/howto-conditional-access-policy-location

（一般的な条件付きアクセス ポリシー: すべてのユーザーに対して準拠デバイス、Hybrid 
Azure AD Join を使用したデバイス、または多要素認証を必須にする）
以下のURLの方法で、自社端末から テナントへのアクセスを許可し それ以外の端末から テナントへのアクセスをブロックさせられます。
https://learn.microsoft.com/ja-jp/azure/active-directory/conditional-access/howto-conditional-access-policy-compliant-device

---

# URLフィルタ を利用するには？
URLフィルタを実現するためには、主に 他社製の Firewall や プロキシサーバーを導入することが一般的です。
これを、Microsoftのサービスで URLフィルタを実現させたい場合は、以下のような選択肢が考えられます。

（私にて検証経験あり）
- Microsoft Defender for EndPoint と CloudApps の統合（[リンク](https://learn.microsoft.com/ja-jp/microsoft-365/security/defender-endpoint/microsoft-cloud-app-security-integration?view=o365-worldwide
 "Microsoft Defender for Endpointと Defender for Cloud Apps の統合")）
- Azure Firewall（[リンク](https://learn.microsoft.com/ja-jp/azure/firewall/fqdn-filtering-network-rules "ネットワーク ルールでの FQDN フィルタリング")）※以下の記事で設定手順を紹介しています。

https://qiita.com/carol0226/items/c40de99f11fb1593f26b

（私にて検証経験なし）
- Microsoft Entra Global Internet Access（[リンク](https://learn.microsoft.com/ja-jp/azure/global-secure-access/overview-what-is-global-secure-access#microsoft-entra-internet-access "Microsoft Entra Global Internet Access")）
 ※2023年8月発表のプレビュー機能、「Webコンテンツフィルタリング機能を使う」

---

# さいごに
各機能の特長を紹介させていただきました。
ご利用の環境のセキュリティニーズを明確にして、それを満たすには どういう組み合わせが良いのか 検討いただくきっかけになれれば幸いです。