AWSがDogwoodをオープンソース化、AIエージェントのツール呼び出しに時系列ポリシー
AIエージェントが回答生成から実作業へ進むと、認可の単位も変わる。重要なのは「この呼び出しを許可するか」だけでなく、過去の操作と現在の要求を合わせた結果として、ワークフローを継続させてよいかどうかだ。AWSはこの課題に向け、ツール呼び出しの履歴を扱えるポリシー言語Dogwoodをオープンソース化した。
Cedarに加わった時間軸
DogwoodはCedarと互換性があり、既存の有効なCedarポリシーを書き換える必要はない。デフォルト拒否やforbidをpermitより優先する仕組みも維持される。新しい点はwhen temporal句で、過去のツール要求と結果からなるイベント履歴を参照できることだ。
これにより、次のようなルールを表現できる。
- 承認を得るまで特定の操作を実行しない;
- 一定時間内の呼び出し回数や累計額を制限する;
- 機密データに触れた後は外部通信を止める;
- これまでのイベントに応じて現在の呼び出しを判断する。
操作パターンは、エージェントのMCPツール一覧から生成される。Dogwoodの時系列条件は内部でCedarのコンテキスト項目に変換され、インタープリターが履歴を反映した後、Cedarが最終判断を行う。formerly、count_within、count_distinct_within、sum_withinは、過去の発生確認、回数、異なる値の数、期間内の合計を扱う。bindを使えば集計結果に名前を付け、現在の要求と比較できる。
並行処理が生む落とし穴
特に重要なのが送金上限の例だ。完了レスポンスだけを合計するポリシーでは、複数の送金が同時に開始され、まだ一件も完了していない間、処理中の金額を把握できない。その結果、本来なら上限を超える組み合わせが通過する可能性がある。要求イベントを合計すれば、上限を超える次の要求を早い段階で拒否できる。
これはAI固有というより、分散システムの問題である。エージェントは複数のツールを並行して呼び出し、複数エージェントの操作も交錯する。逐次処理では正しく見える規則が、要求と結果の遅延によって破綻することがある。制約を要求、結果、あるいはワークフロー全体の状態のどこに結び付けるかが重要になる。
表現力と運用負担の交換
時系列評価にはイベント状態の追跡が必要で、計算時間がログの長さに左右される場合もある。さらに、時系列条件を使うポリシーではCedarの自動推論や形式検証を利用できない。AWSがCedarの単純な拡張ではなく、別言語としてDogwoodを設計した背景にはこのトレードオフがある。
参考インタープリターは探索とテスト向けで、本番の認可実行基盤ではない。実運用には、信頼できる時刻、認証済みイベント、永続化された履歴、テナント間の厳格な分離、判断ログ、適切な保存期間が必要になる。ツール履歴には機密情報が含まれ得るため、信頼できるイベントログがポリシーの前提となる。
MCPがエージェントのメソッドやツール名をインフラから識別しやすくするのに対し、Dogwoodは一連の呼び出しが累積したときに何を許可するかを記述する。絶対時間窓、活性属性、マルチエージェントの引き継ぎやロック向けの機能が今後の候補となっている。
出典:InfoQ 中文
コメント
ログイン状態を確認中…
コメントを読み込み中…