既定環境における Power Platform のオススメ★セキュリティ設定ベスト５

#はじめに
みなさん、業務やプライベートでの Power Platform ライフをエンジョイされていますでしょうか。

突然ですが、皆さんの環境で **Power Platform のセキュリティ設計**ってどのようにされていますか？
プライベートやお勉強環境なら気にしなくても良いですが、業務で利用する場合にはしっかりと検討はしなくちゃいけませんよね。

小規模な組織ならまだ問題ありませんが、数千から数万単位のユーザが所属しているならしっかりと検討するべきだと思います。
また、セキュリティだけでなくガバナンスもしっかりと計画して設計しなければ、たとえ規定環境と言えど**カオスな環境**になってしまいます。

「じゃぁ…どのような考え方でセキュリティ設計をやればいいんだよ…？さっさと導入進めたいのに。」とお悩みの方もいらっしゃると思います。

そんな方に必見！まずは既定環境だけでも良いから Power Platform をスモールスタートで導入・展開されたい場合に、**最低限行っておきたい設定のベスト５**を当記事で紹介したいと思います！
※私個人が選定したベスト５です。全てのセキュリティに関する内容をを担保するわけではありませんので、その点についてはご了承ください。

それではスタート！

#【第5位】アプリ・フローの作成制限
**管理者用のコネクタを利用した Power Automate のフローを作成して、特定環境下のアプリやフローを削除します。**

＊(前置)Power Platform の思想としては、アプリやフローの作成を制限するのはお勧めできません。**将来的な解除を前提**に制限を行いましょう。

- 規模の大きい組織となると、スモールスタートと言えど、**勝手アプリやフローを乱立はさせたくない**
- 管理者用のコネクタと Power Automate を利用すれば、**アプリやフローを削除**できる
- どうしても利用したいアプリやフローがあれば、アプリIDやフローIDを管理台帳（SharePoint Online 等のカスタムリスト）に登録しておき、**登録されているアプリやフローは削除対象外**とするようなフローを組める

以下は管理者用のコネクタのアプリ削除アクションの例
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/ff5fbe3a-82b8-c4bb-5519-630c96730a91.png)

- 詳細は過去記事をどうぞ！：[Power Automate を使い、指定した Power Apps アプリを除いて自動削除する方法(Qiita)](https://qiita.com/daichan3/items/7a5c3c48c8a25eebe891)

#【第4位】環境作成の制限
**既定の設定の場合、Dataverse の容量が存在すると誰でも環境が作成できてしまうので、その操作を制限します。**

- 既定環境だけしか使わないのであれば問題ない設定
- 既定設定のままだと、将来、有償ライセンス購入等で dataverse の容量が追加されることで、**誰でも環境を新たに作成することができる**
- Power Platform の管理センターの設定変更により、**全体管理者または Power Platform 管理者でないと環境を作成できないように設定を変更**する

１．[Power Platform 管理センターの歯車（設定）] - [Power Platform の設定] を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/9409ff92-5b64-58bd-a3d9-e399ecdc1339.png)
２．環境作成の項目で[特定の管理者のみ]を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/7b3fc1b2-4aee-aa46-6cce-79e3b5864837.png)
- 参考サイト：[Power Platform の設定(Microsoft Docs)](https://docs.microsoft.com/ja-jp/power-platform/admin/power-platform-settings)

#【第3位】外部へのメール送信制限
**Exchange Online のトランスポートルールを使って、Power Platform に限定したメール送信制限を行います。**

- 後述する DLP を施すことにより、組織内のデータを簡単に保護することが可能だが、Exchange（Outlook）のコネクタを利用したメール送信については、**簡単に業務データを組織外にメールを送付する**ことができてしまう
- DLP で Exchange（Outlook）のコネクタを制限してしまうと、**組織内への単純なメール通知も行えないようになってしまい、Power Platform の魅力が半減してしまう**
- Exchange Online のトランスポートルールを利用することで、**Power Platform から送信された組織外へのメールを制限することができる**
- Power Platform から送信されるメールに関しては、メールヘッダに **Power Apps や Power Automate から送信されたことがわかる文字列が設定されている**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/a03903b4-7610-d670-7b16-76f349b7e649.png)
- トランスポートルールなので、**特定ドメインは許可**したり、**ファイルが添付されている時だけ**等の制限も可能となる
- 詳細は過去記事をどうぞ！：[PowerPlatform からのメール送信による情報流出を制限する(Qiita)](https://qiita.com/daichan3/items/1ded85359fd49f72a3c8)

参考サイト：[コネクタのメール流出制御(Microsoft Docs)](https://docs.microsoft.com/ja-jp/power-platform/admin/block-forwarded-email-from-power-automate)

#【第2位】テナント間アクセス制限
**コネクタの接続設定から、別のテナントへのアクセスまたは別のテナントから接続させることが可能となるため、それを制限します。**

- 可能な限り制限を行っておきたい設定
- 既定の設定では、**組織外のテナントに接続できたり、逆に接続されることが可能**となっている
- 試しに、コネクタの「･･･」から、新しい接続を選択すると、**別テナントへの接続を作成することができる**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/327998a8-d787-567d-0443-ecad2ba217ce.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/8b0086f0-f145-6938-bd0e-7c4590155f6d.png)
以下は、別のテナントのSPOに接続し、サイトやリストの情報を閲覧できている状態（伏せすぎて内容がわからないですが・・・）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/73a9d4ed-a658-bb39-8c46-d01994396f6b.png)
- 「テナント間アクセス制限」設定を行うことで、**①外部テナントからの接続(一方向のテナント分離)** や **② ①を含めた外部テナントへの接続（双方向のテナント分離）*を制限できる

>![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/6246b74f-47fe-0f92-b68f-e012bc3396ff.png)

- 当制限を有効にするためには、Power Platform 管理センターからテナント間アクセス制限の**サポート要求を行う必要がある**（2021年2月時点）
- Power Platform 管理センター[ヘルプとサポート] - [新しいサポート要求] からサポート要求を行えます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/579576ad-2fb3-64af-b983-39348347f91c.png)

- サポート要求を行う際は、**一方向または双方向のテナント分離**のどちらかをリクエストする
- 注意点として、Microsoft アカウントや Google などの外部 ID プロバイダーを使用するようなコネクタについては、**当機能では制限対象ではない**
- 外部 ID プロバイダーを使用するようなコネクタを制限する場合、**後述する DLP** にて制限を行う必要がある

- 参考サイト：[テナント間のインバウンドとアウトバウンドを制限する(Microsoft Docs)](https://docs.microsoft.com/ja-jp/power-platform/admin/cross-tenant-restrictions)

#【第1位】データ損失防止ポリシー（DLP）
**環境単位で、コネクタ間の接続を禁止にすることができます。**

- Power Platform のセキュリティ設定において定番中の定番 **既定環境においても絶対に設定しておくべき設定**
- Power Platform では400以上のコネクタを利用でき、**重要な業務情報をソーシャルメディアといったサービスに公開できてしまう**
- 大規模組織 且つ 既定環境で Power Platform を公開するなら、なおさらデータ損失防止ポリシーを設定は必須
- DLP は制限するコネクタを**３つに分類**することができる（ビジネス、非ビジネス、ブロック）
    - ビジネス：業務上データなど、**機密な情報を扱う**コネクタ
    - 非ビジネス：個人で使用する、**機密な情報が含まれない**コネクタ
    - ブロック：ブロックするコネクタ。ポリシーが適用されている環境では**対象のコネクタを利用できなくなる**
- **グループを跨ったコネクタの接続は制限**される
    - 設定例
        - [ビジネス]　 SharePoint、Outlook
        ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/ac660c3f-87de-460c-8371-0e7eca10b52b.png)
        - [非ビジネス] Facebook 等
        ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/d2edb71e-2ebf-25b1-08d3-161b0a3d7d77.png)
        - [ブロック]　 Twitter
        ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/77a68899-afa2-9099-9f6d-7c1cea06a862.png)
    - 上記設定を行った場合でのコネクタ制限例
        - SharePoint のデータを取得 → Outlook からメール送付：制限されない
        - Outlook の受信メールを取得 → Facebook へ投稿：**ポリシー違反**に該当し利用不可になる
        - SharePoint のデータを取得 → Twitter へ投稿：そもそもコネクタを**利用できない**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/f6ee0bd4-2b8f-fff3-1d1b-799536fef3a7.png)
ポリシー違反により制限された際のメッセージ（Power Apps）


- 新しいコネクタが出現した場合のことを考えて、**既定グループの設定**は推奨
- ポリシー作成画面の [コネクタ] - [既定グループの設定] から設定可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/45856923-dc36-9a23-b5ae-ea1caf519b66.png)
- 前述した３つのグループのいずれかを既定として選択できる（非ビジネスが既定設定となっている）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438156/4f6f83e9-5499-80b3-8c10-7641e2632fb6.png)
- 例）ブロックを既定としていた場合、新しいコネクタは**自動的にブロックに分類される** ※ブロック不可のコネクタの場合、非ビジネスに分類される
- DLP の設定は**テナント全体の設定から環境毎の設定、除外設定等**が可能。

参考サイト：[データ損失防止 (DLP) ポリシーを作成する(Microsoft Docs)](https://docs.microsoft.com/ja-jp/power-platform/admin/create-dlp-policy)
参考サイト：[PowerAppsとMicrosoft Flowを安全に利用しよう！ データ損失ポリシー(DLP)の設定方法(吉田の備忘録)](https://memo.tyoshida.me/power-platform/powerapps/how-to-setup-dlp-in-powerapps-flow/)

#まとめ
冒頭述べた通り、Power Platform の思想としては極力制限を掛けないほうが良いとは思っていますが、業務上機密なデータを扱っている場合等は今回紹介した制限を検討・導入した後にスモールスタートを行ったほうが良いと私は考えています。

今回紹介した内容以外にも、Docs には様々なセキュリティ関するドキュメントが存在しています。
お時間があるときに是非一読されてみたほうが良いでしょう☺
[Microsoft Dataverse のセキュリティ(Microsoft Docs)](https://docs.microsoft.com/ja-jp/power-platform/admin/wp-security)