Power Automateでフローを作成していると、社内のデータ損失防止(DLP)ポリシーによってフローがブロックされることがあります。しかし、ポリシーを設定したのに一部のフローだけブロックされない、あるいは逆にブロックされるべきでないフローまで停止してしまうケースは珍しくありません。その原因の多くは、DLPポリシーの条件に入力された値や条件分岐の記述にあります。本記事では、DLPポリシーが想定どおりに動作しない場合に、どの項目を確認して修正すればよいかを、具体的な事例を交えて解説します。特に、Power Platform管理センターで設定するポリシーと、フロー内で使われているコネクタの組み合わせに注目してください。
【要点】この記事で確認すること
- 最初に見る場所: Power Platform管理センターのDLPポリシーの詳細画面。設定したコネクタのアクション(許可/ブロック)、条件の優先順位、環境スコープを確認してください。
- 切り分けの軸: フローが属する環境とポリシーが適用される環境が一致しているか、ポリシーの条件(送信者、受信者、データの種類など)が正しく指定されているか、フローで使用しているコネクタのタイプ(標準/プレミアム)を確認します。
- 注意点: DLPポリシーは強力なため、修正する前に現在のポリシーが他に影響しないか必ず確認してください。特に環境全体に適用されるポリシーは慎重に扱い、管理者に相談してから変更することを推奨します。
ADVERTISEMENT
目次
DLPポリシーの基本とブロックが想定どおり進まない原因
Power AutomateのDLPポリシーは、フロー内で特定のコネクタが使われた場合にフローをブロックしたり、特定のデータを含むフローを制限したりするための仕組みです。多くの企業では、機密情報が外部サービスに流出するのを防ぐためにDLPポリシーを設定しています。しかし、以下のような理由でポリシーが期待通りに動作しないことがあります。
よくある原因とその特徴
原因は大きく分けて3つです。1つ目はポリシーの条件設定ミス、2つ目は環境とポリシーのスコープ不一致、3つ目はフロー内のコネクタがポリシーの対象外であることです。特に多いのは、条件に「任意の外部サービス」を指定しているにもかかわらず、実際は特定のコネクタだけをブロックしたい場合に、条件の書き方が不十分なケースです。たとえば、DLPポリシーで「SharePointとGmailの間のデータ転送をブロックする」と設定しても、フローがSharePointからGmailに直接データを送っているわけではなく、別の中間コネクタを経由しているとブロックされません。
条件の優先順位と評価順序
DLPポリシーには複数の条件をAND/ORで組み合わせられますが、評価順序は直列に処理されます。たとえば、「送信者がAさん」という条件と「データに機密ラベルが付いている」という条件をANDで結合した場合、両方を満たすフローだけがブロックされます。ところが、「送信者がAさん」という条件のみを設定したつもりでも、既定で他の条件が追加されているケースがあり、意図しない絞り込みが発生します。このような場合は、ポリシーの詳細画面で条件式を開き、不要な条件が含まれていないかを確認してください。
具体的な確認手順:入力値と条件分岐を直す方法
それでは、実際にDLPポリシーが期待通りにブロックされない場合、どの項目を確認して直せばよいのかを手順に沿って説明します。
- Power Platform管理センター(admin.powerplatform.microsoft.com)に管理者アカウントでサインインします。
- 左側のメニューから「データポリシー」を選択し、該当するDLPポリシーをクリックして詳細を開きます。
- 「条件」タブをクリックし、ポリシーの条件がどのように設定されているかを確認します。ここで、条件の種類(送信者、受信者、データ分類、コネクタなど)とその値が正しいかチェックしてください。
- 条件に「任意の」や「すべて」が含まれていないかを確認します。たとえば「任意のユーザー」とすると、すべてのユーザーが対象になるため、特定のユーザーだけをブロックしたい場合は「ユーザー」条件で個別指定する必要があります。
- コネクタ条件が正しく設定されているかを確認します。DLPポリシーでは、コネクタを「ビジネス」または「非ビジネス」に分類し、そのグループに対してアクション(許可/ブロック/制限)を設定します。ブロックしたいコネクタが正しいグループに属しているか、また「ブロック」アクションが選択されているか確認してください。
- ポリシーの優先順位を確認します。複数のDLPポリシーが存在する場合、優先順位の高いポリシーが先に評価されます。意図したポリシーよりも優先順位の高い別のポリシーが先にマッチしてしまい、ブロックが適用されないことがあります。
- 環境スコープを確認します。DLPポリシーは特定の環境にのみ適用することも、すべての環境に適用することもできます。フローが属する環境がポリシーの対象範囲に入っているか確認してください。
- テスト用のフローを作成し、ポリシーが実際にブロックするかどうかを検証します。テストフローでは、ブロックされるべきコネクタのみを使用し、実行してみてください。ブロックされない場合は、条件の再検討が必要です。
失敗パターンとその修正例
実際の現場でよく見られる失敗パターンを3つ紹介します。これらの事例を参考に、自身の環境で何が問題かを推測してください。
パターン1:条件に「送信者」を指定したのにブロックされない
ある企業で、特定のユーザー(ユーザーA)がSharePointからGoogle Driveにファイルを転送するフローをブロックしようとしました。DLPポリシーに「送信者がユーザーA」という条件を設定したのですが、ユーザーAはその後も問題なくフローを実行できました。原因は、フローがユーザーAのアカウントで実行されていなかったことです。Power Automateのフローは、フロー作成者のアカウントで実行されるとは限らず、共有されたフローの場合は実行者のアカウントが異なることがあります。この場合、ポリシーの条件を「送信者が任意のユーザー」とし、代わりに「コネクタカテゴリが非ビジネス」という条件でブロックする方が確実です。
パターン2:コネクタをブロックしているつもりが許可されている
DLPポリシーで「非ビジネスコネクタ」をブロックする設定にしてあるにもかかわらず、Gmailコネクタを使ったフローが動作してしまいました。調べると、Gmailコネクタが「ビジネスコネクタ」として分類されていたためでした。Power Automateでは、コネクタの分類を管理者が手動で変更できます。しかし、初期設定ではだいたいのコネクタが「ビジネス」になっているものもあります。解決策は、Power Platform管理センターの「コネクタ」メニューから該当コネクタの分類を「非ビジネス」に変更するか、ポリシーで個別のコネクタを指定してブロックすることです。
パターン3:条件をORでつないだのにANDとして評価される
ポリシーの条件式で「送信者がAさん OR データ分類が機密」と設定したのに、Aさんが機密データを送らないフローでもブロックされてしまいました。これは、Power PlatformのDLPポリシーが条件をグループ化できない場合に、ANDとして扱われてしまうバグ(または仕様)が原因の可能性があります。このような場合は、ポリシーを分割して、それぞれの条件に対して個別のポリシーを作成することを検討してください。
状況別の比較表:ブロックが効かない原因と対策
| 状況 | 考えられる原因 | 確認すべき項目 | 修正方法 |
|---|---|---|---|
| 特定のコネクタだけブロックしたいのにブロックされない | コネクタの分類が「ビジネス」になっている | Power Platform管理センターの「コネクタ」一覧で分類を確認 | コネクタの分類を「非ビジネス」に変更するか、ポリシーで個別指定 |
| ユーザーを指定したのに別のユーザーのフローがブロックされる | ポリシーの条件が「任意のユーザー」になっている | 条件の「送信者」に指定した値が正しいか確認 | 条件を特定のユーザーまたはグループに変更 |
| 環境を指定したのにフローがブロックされない | ポリシーの環境スコープが間違っている | ポリシーの「環境」タブで適用対象環境を確認 | 正しい環境が含まれているか追加/削除する |
| フローが部分的にブロックされる(一部のアクションだけ止まる) | ポリシーの条件がアクション単位に細かく設定されている | ポリシーの条件で「アクション」が指定されているか確認 | 条件を緩和するか、アクション指定を削除する |
管理者に確認すべき情報と共有ポイント
DLPポリシーのトラブルシューティングでは、以下の情報を管理者に伝えることで解決がスムーズになります。
- フローが属する環境の名前とID(Power Automateのフロー詳細から取得可能)
- ブロックされないフローとブロックされるべきフローの具体的なコネクタ一覧
- 該当のDLPポリシーの名前と、条件のスクリーンショット
- フローの実行履歴から得られるエラーコード(エラーがない場合は「成功」でも問題)
- 他のDLPポリシーの一覧と優先順位
これらの情報を元に、管理者はポリシーの条件や優先順位を見直すことができます。特に、フローがユーザー委任ではなくサービスプリンシパルで実行されている場合は、ポリシーの条件を「サービスプリンシパル」に切り替える必要があるかもしれません。
よくある質問(FAQ)
Q1. DLPポリシーを変更したのに、すぐに反映されません。なぜですか?
A. DLPポリシーの変更は即座に反映されるのが通常ですが、Power Automate側にキャッシュが残っている場合があります。フローを強制的に保存し直すか、ブラウザをリロードしてから再度テストしてください。それでも反映されない場合は、最大15分程度待ってから確認してください。
Q2. フローで複数のコネクタを使用しています。一つでもブロック対象なら全体がブロックされますか?
A. はい、DLPポリシーはフロー単位で動作し、フロー内のいずれかのコネクタがポリシーに違反した場合、フロー全体がブロックされます。ただし、ポリシーで「アクション」条件を細かく設定している場合は、そのアクション部分だけがブロックされ、フロー全体は継続する設定も可能です。
Q3. ブロックされたフローを復旧するにはどうすればいいですか?
A. ブロックされたフローを復旧するには、DLPポリシーの条件から該当のコネクタを除外するか、フロー側で該当コネクタを使用しないように修正します。管理者権限がない場合は、管理者に連絡してポリシーの緩和を依頼してください。
Q4. DLPポリシーの条件で「グループ」を指定できますか?
A. はい、条件の「送信者」や「受信者」にMicrosoft Entra ID(旧Azure AD)のグループを指定できます。ただし、グループのメンバーシップが動的に変わる場合は注意が必要です。
まとめ
DLPポリシーが想定どおりにブロックされない場合、まずはポリシーの条件と環境スコープを丁寧に確認することが重要です。特に、条件のAND/ORの組み立てやコネクタの分類は誤りが発生しやすい部分です。本記事で紹介した手順や失敗パターンを参考に、ご自身の環境で問題を特定してください。もし自力で解決できない場合は、管理者と情報を共有し、ポリシーの優先順位や条件の見直しを依頼することをお勧めします。Power AutomateのDLPポリシーは一度設定すれば自動で保護してくれる便利な機能ですが、設定の誤りを放置するとセキュリティホールになりかねません。定期的な見直しを習慣づけるとよいでしょう。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】画面共有時に「音声」も共有する方法!音が流れない時の設定手順
