段階区切りと最小権限
AOP では業務を複数の段階に分割し、工程ごとに権限を限定して安全に処理を進めます。 このページでは、フェーズ分割による権限管理と安全性の確保について説明します。
段階区切り(フェーズ)
AOP の多段業務では、## フェーズ N: 名前 (使う道具: 道具名) で段を区切ります。
各フェーズは独立して実行され、フェーズ間で引き継がれるのは成果物だけです。
フェーズを分ける理由は2つあります。 各段に最小権限の道具だけを渡すためと、段の境界で承認を挟むためです。
最小権限
各フェーズには、その段に必要な最小限の道具と権限だけを渡します。
たとえば、請求書の発行業務は、次の3つのフェーズに分けられます。
- データ取得: 会計ソフトの read 系だけを持ちます
- 請求書作成: 会計ソフトの read 系と write 系を持ちます
- 送付準備: メールの read 系と write 系 (= 下書きの作成とラベルの操作。送信は含みません) と承認を持ちます
データ取得の段では、発行や投稿の権限は持ちません。 これにより、各段でその段に必要な権限だけを持つ形になり、権限が広がりすぎるのを防ぎます。
権限の前倒し付与の防止
後続のフェーズで write 権限が必要だからといって、最初のフェーズから write 権限を持たせることはしません。 各段で必要な権限を、その段で初めて渡します。
これにより、エージェントが前段で余分な権限を持って暴走するリスクを構造的に減らします。
