powered by TechFeed
表示モード
Microsoft

AIエージェントに「何でもさせる」か「全部ブロック」かの二択を終わらせる — MicrosoftがOS側で権限を強制する実行コンテナ「MXC」を正式提供

10月7日、Windows Developer Blogが「Microsoft Execution Containers: Policy-driven containment for AI agents」と題した記事を公開した。この記事では、AIエージェントをポリシーで制御・隔離するWindowsの新しい実行コンテナ基盤「Microsoft Execution Containers(MXC)」の正式提供開始について詳しく紹介されている。

10月7日、Windows Developer Blogが「Microsoft Execution Containers: Policy-driven containment for AI agents」と題した記事を公開した。この記事では、AIエージェントをポリシーで制御・隔離するWindowsの新しい実行コンテナ基盤「Microsoft Execution Containers(MXC)」の正式提供開始について詳しく紹介されている。


「エージェントに全権を与えるか、ブロックするか」の二択を超える

AIエージェントはファイル、ネットワーク、アプリケーションをまたいで動作するため、セキュリティリスクが生じやすい。これまで組織は「エージェントに無制限のアクセスを与えて何も起きないことを祈る」か「エージェントをブロックして生産性を諦める」かの二択に迫られてきた。

MXCはその中間を実現する仕組みだ。開発者やIT管理者がエージェントに許可するリソース(ファイルパス、ネットワーク宛先など)をポリシーとして宣言し、MXCがランタイムで境界を強制する。ポリシーはエージェントのワークロード外に置かれるため、エージェント自身やモデルが生成したコードがアクセス権を自己拡張することはできない。

具体例として記事が挙げるのは「Webサイトを更新するコーディングエージェント」だ。このエージェントはリポジトリの読み書きと開発ツールへのアクセスが必要だが、本番サーバーの設定を書き換える権限は必要ない。MXCなしでは、エージェントが「サーバー設定を変更する方が効率的」と判断して本番を壊す可能性がある。MXCを使えば、モデルやツールが何を決定しようとも、その操作はOS側でブロックされる。

従来のWindowsサンドボックス・AppContainerとの位置づけ

Windowsにはこれまでも隔離の仕組みが存在した。Windows Sandboxは使い捨ての仮想環境でアプリを試せるが、エージェントの長時間稼働や細粒度なリソース制御には向かない。AppContainerはUWPアプリ向けの隔離モデルだが、汎用エージェントのワークロードを想定した設計ではなく、許可するリソースをポリシーとして動的に宣言・更新する仕組みも持たない。MXCはこれらの仕組みを置き換えるものではなく、AIエージェント特有の「ポリシー駆動・ランタイム強制」という要件に特化した新たなレイヤーとして位置づけられる。エージェントの行動がOSレベルで制約されるため、プロンプトインジェクションや意図しないツール呼び出しによる権限逸脱を防ぐ効果も期待できる。


4種類のコンテナバックエンド

MXCは用途に応じて4種類のコンテナバックエンドを提供する。

バックエンド 対応OS 主な用途
プロセスコンテナ Windows 11 / macOS / Linux 低レイテンシが求められる軽量ワークロード
セッションコンテナ Windows 11のみ デスクトップを必要とする長時間稼働エージェント
WSLコンテナ(WSLc) Windows 11のみ Linuxエコシステム依存のエージェント
MicroVM Windows 11 / Linux(実験的) ハードウェア仮想化による高リスクワークロード

特にセッションコンテナはWindows固有の機能で、エージェントを別Windowsアカウント・別セッションで動作させ、デスクトップ・クリップボード・UI入力をユーザーから完全に分離する。長時間動作するオートメーションエージェントに向いた構成だ。


ポリシー設計を支える「3つの動作モード」

最小権限ポリシーを最初から正確に書くのは難しい。MXCはこの問題に対し、3つの動作モードを用意している。

モード 未許可アクセス アクティビティレポート 用途
Enforcement ブロック なし 本番運用
Learning ブロック+記録 あり 失敗の診断・ポリシー検証
Permissive 許可+記録 あり ポリシー草稿段階の観察

開発フローとしては、まずPermissiveモードでエージェントを動かして必要なリソースを観察し、JSONのアクティビティレポートを元にポリシーを絞り込む。その後Learningモードで境界を適用しながら失敗箇所を確認し、最終的にEnforcementモードで本番に移行するという流れを想定している。


エージェントのアイデンティティ管理も近日提供

コンテナによる「何ができるか」の制御に加え、「どのエージェントが何をしたか」を識別する仕組みも近く追加される。Microsoft Entraとの連携により、エージェントの活動をユーザーの活動から区別して記録・管理できるようになる予定だ。

これにより、あるエージェントが問題を起こした場合、そのエージェントのアクセスだけを制限し、従業員の業務は継続させるという運用が可能になる。Microsoft Intuneによる組織ポリシーの適用(MXCプロセスコンテナへの制約の一元管理)も間もなく提供される。


対応エージェント・フレームワーク

すでにMXCをサポートしているエージェント・フレームワークにはGitHub Copilot、OpenAI Codex、Replit、LM Studio、Unsloth AIなどが含まれる。今後のサポート予定にはAnthropic Claude Code、Manus、Perplexity、Raycastなどが名を連ねている。NVIDIAはOpenShell(NVIDIAが開発するAIエージェント向けシェル実行基盤)をMXCに統合し、ファイルや推論サービスへのアクセス制御、OCSF(Open Cybersecurity Schema Framework)準拠のオーディティングなどを組み合わせている。

MXCのSDKおよびGitHubリポジトリはgithub.com/microsoft/mxcで公開されており、JSON設定スキーマとマルチ言語SDKにより既存のエージェント開発フローへの組み込みが可能だ。


詳細はMicrosoft Execution Containers: Policy-driven containment for AI agentsを参照していただきたい。