Microsoft Defenderの「Security for AI」では、Microsoft Agent 365のツール呼び出しを実行フロー内で評価し、危険な処理を実行前に止めるリアルタイム保護が一般提供されました。
ただし、Defenderポータルに最初から用意されている既定ルールは監査専用です。実際に処理を遮断するには、カスタムのリアルタイム保護ルールを作成し、対象エージェントと検出タイプを指定する必要があります。
現在選択できる主な遮断対象は、検出・制御の回避、悪意あるコンテンツの拡散、秘密情報の漏えい、安全でないメールドメインとの通信の4種類です。一方、脅威検出機能は実行後または実行中の挙動を分析してアラートを出す仕組みで、リアルタイム保護とは役割が異なります。2026年7月時点では、リアルタイム保護が一般提供、Agent 365の脅威検出はパブリックプレビューです。(TECHCOMMUNITY.MICROSOFT.COM)
Agent 365の危険なツール通信をDefenderで即時遮断できる範囲
一般提供されたリアルタイム保護は、Microsoft Agent 365のエージェントがWork IQ MCPや登録済みのカスタムMCPサーバーを利用するときに、ツール呼び出しと応答を実行フロー内で評価する機能です。
危険と判断された操作は、エージェントの開発者が独自の防御処理を実装していなくても、Defenderのポリシーによって遮断できます。今回の一般提供は、特にWork IQとAgent 365へ登録されたカスタムMCPサーバーの保護が中心です。(TECHCOMMUNITY.MICROSOFT.COM)
リアルタイム保護・監査・脅威検出の違い
混同しやすいのが、既定の監査ルール、カスタムの遮断ルール、脅威検出アラートの違いです。
| 項目 | 既定のリアルタイム保護ルール | カスタムのリアルタイム保護ルール | 脅威検出 |
|---|---|---|---|
| 動作 | 監査 | 遮断 | 検出・通知 |
| 処理を止めるか | 止めない | 実行前に止める | 原則として止めない |
| 評価タイミング | 実行フロー内 | 実行フロー内 | ほぼリアルタイム |
| 主な出力先 | BehaviorInfo | BehaviorInfo | Defenderのアラート・インシデント |
| 主な目的 | 影響確認、導入前調査 | 秘密漏えいや危険な操作の予防 | SOCによる調査、影響範囲の把握 |
| 提供状況 | リアルタイム保護の一部 | 一般提供 | パブリックプレビュー |
既定のDefault ruleは、すべてのエージェントを監査しますが、該当する処理を止めません。危険な操作を実際に遮断するのは、管理者が作成するカスタムルールです。カスタムルールでは、対象エージェントと検出タイプを絞り込み、高い確度で危険と判断できる操作を実行前にブロックします。(Microsoft Learn)
リアルタイム保護で遮断できる4つの脅威
リアルタイム保護ルールの作成画面では、次の4つの検出タイプを選択できます。日本語表示はポータルの言語や更新時期によって変わる可能性があるため、英語名も確認しておくと迷いにくくなります。
| 英語の検出タイプ | 日本語での意味 | 想定される危険な動作 |
|---|---|---|
| Evasion techniques | 検出・制御の回避 | ガードレールやセキュリティ制御を回避する指示をエージェントが実行しようとする |
| Malicious content propagation | 悪意あるコンテンツの拡散 | 悪意ある文章、コード、リンクなどをメールやツール経由で配布しようとする |
| Secret exfiltration | 秘密情報の持ち出し・漏えい | APIキー、資格情報、トークンなどをツール呼び出しで外部へ送信しようとする |
| Unsafe email domain | 安全でないメールドメイン | 高リスクまたは信頼されていないメールドメインへメールやデータを送ろうとする |
Microsoftの発表では、「Secret leakage」という表現も使われていますが、ルール画面の検出タイプは「Secret exfiltration」と表示される場合があります。いずれも、資格情報やAPIキーなどの秘密情報がエージェントの操作を通じて外部へ流出することを防ぐ目的です。(TECHCOMMUNITY.MICROSOFT.COM)
Unsafe email domainは一般的なURLフィルターではない
「Unsafe email domain」は、任意のWebサイトやHTTP通信をすべてドメイン単位で遮断するネットワークフィルターではありません。現時点の公式説明では、エージェントが高リスクまたは信頼されていないメールドメインへメールやデータを送信する動作が対象です。
また、公開されている設定手順では、管理者が独自の許可ドメイン一覧や禁止ドメイン一覧をルール内へ直接登録する項目は示されていません。そのため、Exchange Onlineのメールフロールールやファイアウォール、Microsoft PurviewのDLPを置き換える機能とは考えない方が安全です。
Secret exfiltrationだけで全機密情報を保護できるわけではない
Secret exfiltrationは、資格情報、APIキー、アクセストークンなどの秘密情報を含む危険なツール通信を止めるための保護です。
個人情報、機密ラベル付き文書、設計資料、顧客データなど、組織独自の情報分類をすべて網羅するDLPではありません。したがって、次のように役割を分ける必要があります。
- Defender Security for AI:エージェントの危険な実行動作やツール呼び出しを遮断
- Microsoft Purview DLP:機密情報の分類、共有、持ち出しをポリシーで制御
- Exchange Onlineやネットワーク制御:送信先や通信経路を組織の基準で制限
保護対象になるエージェントとツール
リアルタイム保護は、Agent 365に登録されたすべてのツールを無条件に保護するわけではありません。エージェントの種類と接続方法によって対象範囲が異なります。
| エージェント・ツール | 保護方法 | 注意点 |
|---|---|---|
| Agent 365とWork IQ MCPを利用するエージェント | Agent 365のリアルタイム保護ポリシー | ツール呼び出しを実行前に評価 |
| Agent 365へ登録したカスタムMCPツール | Agent 365のリアルタイム保護ポリシー | カスタムMCPツールをAgent 365へオンボードする必要がある |
| Copilot Studioエージェント | Copilot Studio連携によるリアルタイム評価 | Work IQ MCPには依存しないが、別途接続設定が必要 |
| ローカルで動作するAIエージェント | Microsoft Defender for Endpoint | クラウドエージェントとは別にオンボードが必要 |
| 未対応ツールや未登録MCPサーバー | 原則として対象外 | ポリシーを作成しても通信経路が評価されない可能性がある |
Agent 365のエージェントであっても、未対応ツールを使用している場合や、Work IQ MCPと統合されていない経路の操作は保護対象になりません。ローカルAIエージェントについても、同じリアルタイム保護ルールを適用するのではなく、Defender for Endpoint側でランタイム保護を設定します。(Microsoft Learn)
リアルタイム保護ポリシーを設定する前の確認項目
ルールを作成する前に、次の準備を済ませます。
- テナントをMicrosoft Agent 365へオンボードしている
- Microsoft Entra IDでSecurity Administrator以上の権限を持っている
- DefenderポータルでSecurity for AIが有効になっている
- Microsoft 365コネクターが接続されている
- 対象のエージェントとMCPツールがAgent 365へ登録されている
- Copilot Studioを対象にする場合はPower Platform管理者と連携できる
- ローカルエージェントを対象にする場合はDefender for Endpointをアクティブモードで利用している
Microsoft 365コネクターでは、少なくとも「Microsoft Entra ID Management events」と「Microsoft 365 activities」を選択します。「Microsoft Entra Users and groups」は監視機能の前提として既定で選択されます。(Microsoft Learn)
Security for AIの接続状態を確認する
Microsoft Defenderポータルで、次の順に開きます。
設定(Settings)
→ Security for AI
→ Get started
Agent 365へオンボードすると、Security for AI Agentsは原則として自動的に有効になります。セットアップ画面で、Agent 365とMicrosoft 365コネクターの状態が完了または接続済みになっていることを確認してください。
Copilot Studioエージェントを保護する場合は、同じ画面からCopilot Studioのリアルタイム保護を有効にし、Power Platform管理者との連携設定を完了します。
DefenderでAIリアルタイム保護ルールを作成する方法
リアルタイム保護の管理画面を開く
Microsoft Defenderポータルへサインインし、次の順に移動します。
設定(Settings)
→ Security for AI
→ Policies & rules
→ Real-time protection
ここには、最初からDefault ruleが表示されます。
Default ruleの対象は原則としてすべてのエージェントですが、動作はAuditです。このルールが有効でも、危険なツール操作は遮断されません。
カスタムルールを作成する
「Create rule」を選択し、ルールの基本情報を入力します。
設定例は次のとおりです。
| 項目 | 設定例 |
|---|---|
| Status | Enabled |
| Rule name | Block-Secrets-UnsafeDomain-Prod |
| Rule description | 本番エージェントによる秘密情報の持ち出しと未信頼メールドメインへの送信を遮断 |
| Scope | Specific agents |
| Detection types | Secret exfiltration、Unsafe email domain |
ルール名には、動作、検出対象、適用環境を含めると管理しやすくなります。
たとえば、Block-Secrets-UnsafeDomain-Prodであれば、秘密情報と危険なメールドメインを対象にした本番環境用の遮断ルールであることが分かります。
対象エージェントを指定する
Scopeでは、次のいずれかを選択します。
- All agents:すべての対象エージェントへ適用
- Specific agents:選択したエージェントだけに適用
さらに、特定のエージェントを除外することもできます。除外画面では、プラットフォームや公開状態でエージェントを絞り込めます。
ただし、除外候補として表示されるのは、Microsoft Entra agent IDを持つエージェントだけです。対象エージェントが一覧に表示されない場合は、ポリシー画面の不具合と判断する前に、Agent 365への登録状態とEntra ID上のエージェントIDを確認してください。(Microsoft Learn)
遮断する検出タイプを選択する
Detection typesで、必要な検出タイプを選択します。
- Secret exfiltration
- Malicious content propagation
- Evasion techniques
- Unsafe email domain
一つのルールですべて選択できますが、実務では目的別に分割した方が変更や例外処理を行いやすくなります。
たとえば、次のように分けられます。
| ルール | 検出タイプ | 主な対象 |
|---|---|---|
| 秘密情報・外部送信遮断 | Secret exfiltration、Unsafe email domain | メール送信、顧客対応、経理、総務エージェント |
| 悪意ある処理遮断 | Evasion techniques、Malicious content propagation | IT運用、コード生成、コンテンツ配信エージェント |
| 高権限エージェント保護 | 4種類すべて | 管理権限や広いデータアクセス権を持つエージェント |
設定内容を確認し、「Create」を選択するとカスタムの遮断ルールが作成されます。作成後は、詳細画面から編集、有効化、無効化、削除が可能です。(Microsoft Learn)
いきなり全エージェントを遮断対象にしない
最初からAll agentsへカスタムルールを適用すると、正当な業務処理まで止める可能性があります。
特にUnsafe email domainでは、新しい取引先、外部委託先、テスト環境などへの送信が期待どおりに分類されるとは限りません。公開ドキュメントでは、未信頼ドメインの詳細な判定基準や、管理者が調整できるしきい値までは示されていません。
安全に展開するには、次の順序が適しています。
既定の監査ルールで挙動を確認する
まずDefault ruleの監査結果を確認し、通常業務でどのような挙動が記録されているかを把握します。
確認すべき項目は次のとおりです。
- どのエージェントが外部送信を行っているか
- どのツールやMCPサーバーが呼び出されているか
- 正常業務で秘密情報に似たデータを扱っていないか
- 新規または外部のメールドメインへ送信する業務があるか
- 誤検出時に業務がどこまで停止するか
少数の本番エージェントへ適用する
最初のカスタムルールはSpecific agentsを選び、影響を把握しやすいエージェントだけを対象にします。
優先度が高いのは、次のようなエージェントです。
- メールを自動送信できる
- APIキーや資格情報へアクセスできる
- 顧客データや社内文書を取得できる
- 複数のMCPツールを自動実行できる
- ユーザーの確認なしで処理を完了できる
検証後に適用範囲を広げる
遮断結果と業務影響を確認した後、対象エージェントを追加します。
例外が必要なエージェントは、ルール自体を無効にするのではなく、対象範囲や除外設定で管理します。これにより、他のエージェントの保護を維持したまま、問題のある範囲だけを調整できます。
遮断された処理をBehaviorInfoで確認する
リアルタイム保護で監査または遮断された処理は、Advanced HuntingのBehaviorInfoテーブルへBehaviorとして記録されます。
記録には、危険と判断された理由、関係するエージェント、ユーザー、ツールなどの情報が含まれます。関連エンティティはBehaviorEntitiesでも確認できます。(Microsoft Learn)
直近7日間のBehaviorを確認するKQL
BehaviorInfo
| where Timestamp >= ago(7d)
| project
Timestamp,
BehaviorId,
ActionType,
Title,
Description,
AccountUpn,
DetectionSource,
ServiceSource,
AdditionalFields
| order by Timestamp desc
最初から特定のActionTypeやTitleで絞り込むと、テナント内で使われている実際の値と一致せず、結果を見落とすことがあります。
まず次のクエリで、記録されているActionTypeやTitleの種類を確認します。
BehaviorInfo
| where Timestamp >= ago(14d)
| summarize Events = count()
by ActionType, Title, DetectionSource, ServiceSource
| order by Events desc
値を確認した後、対象のActionTypeやTitleを条件に追加してください。
エージェントや接続先を関連付けるKQL
let RuntimeEvents =
BehaviorInfo
| where Timestamp >= ago(7d)
| project
Timestamp,
BehaviorId,
ActionType,
Title,
AccountUpn;
RuntimeEvents
| join kind=leftouter (
BehaviorEntities
| project
BehaviorId,
EntityType,
EntityRole,
Application,
RemoteUrl
) on BehaviorId
| order by Timestamp desc
BehaviorEntitiesには、ユーザー、アプリケーション、URL、メールなど、Behaviorに関係するエンティティが格納されます。なお、リアルタイム保護自体は一般提供されていますが、BehaviorInfoとBehaviorEntitiesのAdvanced Huntingスキーマは、現時点のMicrosoft LearnでPreviewと表記されています。(Microsoft Learn)
ブロック後にアラートが表示されないのは異常とは限らない
リアルタイム保護の運用で特に注意したいのが、「遮断されたのにDefenderのアラート一覧へ表示されない」というケースです。
現行の公式ドキュメントでは、監査または遮断されたイベントはBehaviorInfoへ記録されます。一方、クラウドエージェントのほぼリアルタイム検出アラートは監査モードで生成され、ブロッキングルールの対象となるエージェントでは、ほぼリアルタイムアラートが生成されないと説明されています。(Microsoft Learn)
つまり、次のように考える必要があります。
- アラートがないから、何も起きていないとは限らない
- ブロックイベントはBehaviorとして確認する
- SOCの監視対象に
BehaviorInfoを加える - 必要に応じてBehaviorを基にカスタム検出や自動処理を作成する
リアルタイム保護を有効にした後も、アラートとインシデントだけを監視していると、重要な遮断結果を見落とす可能性があります。
脅威検出アラートで確認できる範囲
パブリックプレビューの脅威検出は、Agent 365の可観測性データ、ツール使用、実行パターンなどを分析し、疑わしい動作をDefenderのアラートとして表示します。
公式ドキュメントでは、次のような脅威が検出対象として挙げられています。
- 間接プロンプトインジェクション
- Jailbreakの試行
- 検出や制御の回避
- 悪意あるコンテンツの拡散
- 秘密情報や資格情報の漏えい
- エージェントやLLMの能力を調査する偵察行為
- 疑わしいユーザーやIPアドレスからのアクセス
対象には、Copilot Studio、Microsoft Foundry、Microsoft 365 Copilot Agent Builder、Agent 365 SDKを通じて可観測性データを送信するエージェントなどが含まれます。(Microsoft Learn)
リアルタイム保護の4種類よりも脅威検出の対象は広いものの、脅威検出は調査と通知が中心です。秘密情報の送信などを実行前に止めたい場合は、カスタムのリアルタイム保護ルールが必要です。
プロンプト証拠の収集にも注意する
Microsoft Defenderは、既定でアラートの証拠として、ユーザーとエージェントの間でやり取りされたプロンプトの一部を保存します。
保存対象は、セキュリティ分類に関係すると判断された部分です。秘密情報や機密データは編集されますが、会話の内容自体に業務上の情報が含まれる可能性は残ります。
設定は次の場所で変更できます。
設定(Settings)
→ Security for AI
→ Prompt evidence collection
調査精度を優先する場合は有効のまま運用し、プライバシーや社内規程との整合性を優先する場合は、収集内容と閲覧権限を確認したうえで判断します。(Microsoft Learn)
設定時に失敗しやすいポイント
| 失敗例 | 原因 | 対処方法 |
|---|---|---|
| Default ruleを有効にしたのに処理が止まらない | 既定ルールはAudit | カスタムルールを作成する |
| 対象エージェントが一覧に出ない | Agent 365への登録やEntra agent IDが不足 | エージェントのオンボード状態とIDを確認する |
| ポリシーを作成してもツール通信が止まらない | 未対応ツール、未登録MCP、対象外経路を利用 | Work IQ MCPまたは登録済みカスタムMCPを利用しているか確認する |
| ブロック結果がアラートに出ない | イベントがBehaviorとして記録されている | BehaviorInfoをAdvanced Huntingで確認する |
| 正常な外部送信まで止まる | 最初からAll agentsへ適用した | Specific agentsから段階的に展開する |
| ローカルエージェントが保護されない | クラウド向けポリシーだけを設定した | Defender for Endpoint側でランタイム保護を設定する |
| 調査に必要なデータが不足する | Microsoft 365コネクターが未接続 | Security for AIのGet startedから接続する |
まず秘密漏えいと未信頼ドメイン通信から限定導入する
DefenderのAIリアルタイム保護を導入する際は、既定の監査ルールだけで保護できていると判断しないことが重要です。
最初にAgent 365へ登録されたエージェントとMCPツールを棚卸しし、Default ruleの監査結果を確認します。その後、メール送信や秘密情報へのアクセス権を持つエージェントを対象に、Secret exfiltrationとUnsafe email domainを選択したカスタムルールを作成します。
適用後は、アラート一覧だけでなくBehaviorInfoで遮断結果を確認してください。業務影響と検出精度を確認できたら、Evasion techniquesとMalicious content propagationを追加し、対象エージェントを段階的に広げます。
この順序なら、AIエージェントの自律性を維持しながら、秘密情報の漏えいや危険な外部通信を実行時点で止める運用へ移行できます。

コメント