api.orcarouter.ai でエージェントが使うキーがあり、そのキーが行うすべての
ツール呼び出しを統制したい — ブロック、audit、サニタイズ、承認のための保留 —
エージェントのコードに触れることなく。それが 2 ステップのエージェント
ファイアウォールセットアップです:ファイアウォールポリシーを
一度作成し、キーをそれに向けます。次の呼び出しから、キーが発行するすべての
ツールがゲートウェイでポリシーに対してチェックされます。
このページは作成・アタッチのパスです。完全なポリシーモデル(サーフェス、判定、
解決)についてはファイアウォールの概要を、ルール文法に
ついてはファイアウォールルールを参照してください。
すべてのポリシーとキーの設定はコンソール(または
/api/workspace/firewall/*
管理ルート。これらはセッション / アクセストークンを使い、リレーの sk-orca-… キー
ではありません)で行われます。エージェントの /v1/* 呼び出しのみがリレーキーを
使います。ポリシーの作成とアタッチは Developer+ のアクションです。1. エージェントファイアウォールセットアップ概観
ファイアウォールポリシーは名前付きの、ワークスペーススコープのオブジェクト です:順序付けられたルールのリストと、どのルールもマッチしないすべてのための デフォルト判定です。キーはそのfirewall_policy_id フィールドを通じてポリシーに
オプトインします。スタックの他の何も変わりません。
ポリシーを作成
名前を付け、デフォルト判定を選び、ルールを追加 — または自律性レベル /
プリセットからシードして編集します。
キーをアタッチ
キーの
firewall_policy_id をポリシーに設定するか、ポリシーをワークスペース
デフォルトにマークして、すべてのアタッチされていないキーがそれを継承するように
します。2. コンソールでポリシーを作成する
- Security → Firewall → Policies を開き、New policy を選びます。
- 名前を付け(ワークスペース内で一意)、Enabled をオンのままにします。
- デフォルト判定を選びます — §3 を参照。
- ルールエディタでルールを追加するか、空のまま開始して後で Discovered tools に実トラフィックからの作成を 駆動させます。
- 保存します。ポリシーは存在しますが、キーがそれに向けられるか、ワークスペース デフォルトにするまで何も統制しません。
3. デフォルト判定を選ぶ
デフォルト判定は、ポリシーがどのルールもマッチしないツール呼び出しに 対して行うことです。それはあなたの姿勢の床です。ちょうど 3 つの値を受け入れます:default_verdict | どのルールもマッチしないとき… |
|---|---|
audit (デフォルト) | 呼び出しを許可しますが、記録します。すべてを観察し、何もブロックしません — 安全な開始点。 |
allow | 許可してログ、レビューレコードなし。 |
deny | ルールが明示的に許可しないものをブロック — allow ルールと組み合わせるデフォルト deny の姿勢。 |
allow、audit、deny、sanitize、
pending_approval、cap_cost)は判定で
カバーされています — デフォルト判定は上記の 3 つに限定されます。
4. ポリシーをキーにアタッチする
キーはそのfirewall_policy_id を通じてポリシーにオプトインします。
コンソールで:
- Keys を開き、エージェントが使うキーを編集します。
- Firewall policy を作成したポリシーに設定します(これは
firewall_policy_idを書き込みます)。 - 保存します。そのキーが行う次の呼び出しが統制されます。
Authorization: Bearer sk-orca-… と同じリクエストボディを送り続けます。
エージェントのツール呼び出しコードに変更はありません。
inbound サーフェスでツール呼び出しを deny すると、その呼び出しは
ツールと理由を名指しするコード firewall_blocked の HTTP 400 として返って
きます —
ブロックがどう見えるかを参照。
5. 解決:アタッチ済み → ワークスペースデフォルト
任意のツール呼び出しについて、ゲートウェイはこの順序でどのポリシーが適用されるかを 解決します:1. キーのアタッチ済みポリシー
1. キーのアタッチ済みポリシー
呼び出し元キーの
firewall_policy_id が存在し有効なポリシーを指している
場合、そのポリシーが適用されます。2. ワークスペースデフォルト
2. ワークスペースデフォルト
それ以外の場合、ワークスペースの有効な
is_default ポリシーが適用されます
(設定されている場合)。ワークスペースごとに最大ひとつのポリシーがデフォルトに
なれます;新しいデフォルトをプロモートすると、同じトランザクション内で古いものが
降格されます。3. どちらもなし → 強制なし
3. どちらもなし → 強制なし
アタッチメントもデフォルトもないということはポリシーがないことを意味します。
観察モードがオンの場合、呼び出しは許可され
カバレッジギャップとしてログされます;オフの場合、呼び出しはサイレントに
許可されます。
無効化されたアタッチ済みポリシーはワークスペースデフォルトにフォールバック
します — 強制をオフにはしません。(これは
ガードレールとは異なります。
ガードレールでは無効化されたアタッチメントはnone に解決されます。)キーを
ファイアウォールのスコープから外すには、それをデタッチします(
firewall_policy_id
を 0 に設定)、ポリシーをただ無効にするのではなく。6. 効果を確認する
それに依存する前に、ポリシーが期待どおりに発火することを確認します:- テストする — サンドボックスの Test タブはサンプルのツール呼び出しに 対してポリシーをドライランし、判定、マッチしたルール、理由を返します。何も ディスパッチも永続化もされません。 ルールのテストを参照。
- events フィードを監視する — キーがライブトラフィックを受け取ると、 Events が各評価を、判定、サーフェス、ツール、 実行でフィルタ可能に表示します。
次に進む場所
ルールの作成
完全なマッチング言語 — ツールグロブ、引数句、egress リスト、サニタイザ。
ツール許可リスト
deny デフォルト判定を明示的な allow ルールと組み合わせます。ポリシーの管理
デフォルト、有効化/無効化、バージョニング、リバート。
ゼロトラストの理由
テキストだけでなくアクションを統制することがなぜエージェントにとって重要か。
