ソース&クレデンシャルのスコープ設定
ソース&クレデンシャルのスコープ設定(modules/sourcescope)は、実行時に
単一の問いに答えます。すなわち、エージェントやセッションが接続済みのソース(MCP サーバー、
モデル、プロバイダー、ナレッジベース、データソース)を参照するとき、このアクターは
スコープ内にあるか、そしてどのクレデンシャル参照が適用されるかです。これは LIVE
です。バインディングテーブル、その書き込み API、ランタイムの PEP が呼び出すリゾルバーが、
すべてバイナリに同梱されています。
これがカラムではなくモジュールである理由は、ここで強制されるスコープがいずれか1つの
ソースエンティティの属性ではないからです。MCP 設定、モデル、プロバイダー、ナレッジベースは
異なるモジュールに存在し、ワークスペースをそもそも持つのはエージェント/セッション/リソースの
軸だけです。スコープはバインディングです: (source) → (workspace または agent-group)。これに省略可能なスコープ付きクレデンシャル参照を伴います。このモジュールが
そのバインディングテーブルとリゾルバーを所有します。
バインディングとその API
Section titled “バインディングとその API”/v1/m/sourcescope/bindings は標準的な CRUD 面で、sourcescope:binding:read と
:binding:write でゲートされます。バインディングは1つのソース種別(mcp、model、
provider、knowledge、data)と1つのスコープツリー(workspace、agent_group)を
対象とし、値を持たない CredRef(論理名、ref_kind ロケーター(env、vault、
secret_manager、file、other)、省略可能なマスク済みヒント)を伴います。いずれの
フィールドも利用可能なシークレットを保持できません。ハンドラーはインラインの
クレデンシャルを拒否します。これは capabilities.mcp_config.secret_refs と同じ
最小データ不変条件です。
リゾルバーの判定方法
Section titled “リゾルバーの判定方法”判定は deny-closed かつ合成的であり、2つ目の認可エンジンではありません。
- 包含(Containment) — ワークスペース W に紐づけられたソースは、W 内のエージェントや セッションが追加設定なしで解決できます。
- グラント(Grant) —
vi-governanceからの、x-modelsをまたぐスコープ付き Cedar グラントが、 別のワークスペースを開きます。 - RBAC — テナント全体の権限は依然としてすべてを見渡せます。ワークスペースは ソフトアイソレーションであり、テナントがハードな境界です。
- Forbid — スコープ付き Cedar の forbid は上記すべてを上書きします。
このゲートは**加算的(additive)**です。バインドされていないソースは後方互換のため
グローバルなままです。バインドされているが包含するスコープも、グラントも、RBAC も
ないソースは 拒否(denied) されます。リゾルバーは、モデルの execute-chain と
viii-knowledge の検索(retrieval)に
ScopeGate として組み込まれています。
境界づけられたコンテキスト(率直に)
Section titled “境界づけられたコンテキスト(率直に)”- これは参照バインディングのみです。実際のプロバイダー呼び出しにおける スコープ付きクレデンシャルの消費、およびエージェントの代理でサーバーへ接続する ランタイムの MCP ブローカーは、まだツリー内に存在しません。リゾルバーは スコープ内の参照を返しますが、ここではそれを使ってアウトバウンド呼び出しを認証する ものは何もありません。
- アクターのスコープは、呼び出し元のアクター参照によって指定されたエージェント/ セッションから得られます。スコープ値は格納された行から読み取られます(呼び出し元が ワークスペースを注入することはできません)が、どのエージェントを選ぶかは呼び出し元 次第です。その参照をプリンシパルに束縛することは、ハードニングのフォローアップです。 honesty and limits を参照してください。
- Governance (vi) — リゾルバーが合成する Cedar の grant/forbid 代数と RBAC。
- Models (x) —
ScopeGateが動く execute-chain。 - Knowledge (viii) — ガバナンス下の検索。 リゾルバーがゲートする2つ目の場所。