rm -rf /、SQL ランナーが実行するために
発する UNION SELECT。PII やシークレットのことだけを考えるコンテンツポリシーは
4 つすべてを見逃します。Agent プリセットカテゴリはまさにこの形のために存在
します — ダウンストリームのツールが作用する前にリクエストまたはレスポンスを
ブロックする決定的な regex ルールです。
これはエージェント型のユースケースに焦点を当てた着地ページです。完全な
ガードレールエンジン — すべてのルールの種類、フィールド、ステージ、ルート — に
ついては、ガードレールリファレンスを参照してください。
1. なぜエージェントガードレールは別個のサーフェスなのか
ガードレールはコンテンツ — リクエスト内のテキストとレスポンス内のテキスト — を スクリーニングします。エージェントにとって、そのテキストはアクションになります: URL はフェッチされ、markdown はレンダリングされ、シェル行は実行され、SQL は 実行されます。そのため、PII に使うのと同じblock / mask エンジンがここで
二役を果たします — エージェントのツールレイヤーがそれを副作用に変える前に、
ゲートウェイでペイロードを止めます。
Agent カテゴリは 4 つのプリセットを同梱し、各々がアクション block の
regex ルールで、2 つのステージに分かれています:
URL Filter — input、block
URL Filter — input、block
リクエスト上の任意の
http(s) URL をブロックします。アウトバウンド URL を
オープンではなく許可リストにする必要があるエージェントフローに使います。
シードされたパターンは任意の URL にマッチします。特定のドメインを許可するには
正規表現を編集します。Markdown Image Block — output、block
Markdown Image Block — output、block
モデルのレスポンス内の markdown 画像埋め込み(
)をブロック
します。リモート画像を自動ロードするクライアントでの画像レンダリング持ち出しを
防御します — レンダリングされた画像 URL がデータを密輸する古典的なデータ漏洩
チャネルです。Tool Call Shell Block — input、block
Tool Call Shell Block — input、block
リクエスト内の明白なシェルインジェクションパターン(
rm -rf /、
curl … | sh、wget … | bash、sudo 昇格)をブロックします。ユーザー入力を
シェルツールに転送し得るエージェントフローに使います。SQL Injection in Output — output、block
SQL Injection in Output — output、block
古典的な SQL インジェクションペイロード(
UNION SELECT、OR 1=1、
DROP TABLE、コメントターミネータ)を運ぶモデルレスポンスをブロックします。
モデルが生成した SQL を自動実行するツールのための多層防御です。2. コンソールでエージェントガードレールを適用する
ここでのすべてのステップは、あなた自身のセッション下の、ホスト型ゲートウェイ上の コンソールアクションです。ガードレールの作成と編集にはワークスペースで Developer+ が必要です。最後の/v1/* 呼び出しのみが sk-orca-... リレーキーを
使います — ガードレール自体は完全にコンソールで設定されます。
テンプレートを開く
コンソールで Guardrails を開き、New guardrail スプリットボタンを
クリックし、Agent テンプレートカテゴリからプリセットを選びます — 例:
Markdown Image Block。正しいステージで単一の
regex ブロックルールを
シードします。名前を付けて保存する
名前(≤ 64 文字)を付け、例:
agent-rails、保存します。プリセットはシードで
あり、ロックではありません — 後で他の 3 つの Agent ルールを追加するか、正規表現を
自由に編集します(§4を参照)。サンドボックスでテストする
エディタ内の Test タブを開き、サンプルを貼り付け、マッチするステージを選び、
現在のポリシーをローカルで実行します — アップストリーム呼び出しなし、クォータ
なし(§3を参照)。
キーをアタッチする
API キーを編集し、Guardrail ドロップダウンから
agent-rails を選ぶ
(キー上に guardrail_id を設定)か、ワークスペースデフォルトとして
マークします。キーにアタッチすると
アカウントデフォルトを参照。3. アタッチする前に証明する
いずれかのキーがそれを指す前に、ルールが発火することを証明します。Test タブを 開き、output ステージを選び、攻撃者に汚染されたページがモデルに発させたかも しれないレスポンスを貼り付けます:4. ルールを組み合わせてチューニングする
4 つのプリセットはシードです。一般的な手は、それらをひとつのagent-rails
ガードレールに組み合わせ、各正規表現をあなたのスタックに引き締めることです:
URL を許可リスト化する
URL Filter から始め、それから
regex を編集して、あなたの認可された
ドメイン以外のすべての URL をブロックするようにします — 一律ブロックではなく
許可リストにマッチを反転させます。独自の検出器を作成する
あなたのツールが気にする任意のペイロード形状に対して
regex ルールを追加します — RE2
パターン、線形時間、後方参照なし。パターンは一度コンパイルされ、リクエスト間で
キャッシュされます。5. ブロックがどう見えるか
すべての Agent プリセットは block アクションを使います。ブロックされた リクエストは、発火したガードレールとルールを示すメッセージとともに、エラーコードguardrail_blocked の HTTP 400 を返します:
guardrail_blocked エラーを参照。
6. ガードレールはコンテンツ、ファイアウォールはツール呼び出し
エージェントガードレールは強力な第一レイヤーですが、ツールのセマンティクスではなく 文字列について推論します。コンテンツ内のシェル行をブロックします — モデルが 破壊的ツールへの構造化されたtool_call を発したことや、アウトバウンドリクエストが
メタデータ IP に向かっていることは理解しません。
そのツール呼び出しレイヤーがファイアウォールです:モデルが
発した tool_calls、MCP tools/call、アウトバウンド egress を、allow / audit /
deny / pending_approval のような判定で評価します。2 つは組み合わさります —
ガードレールはテキストをスクリーニングし、ファイアウォールはアクションを統制します。
ファイアウォール
モデルが発したツール呼び出し、MCP 呼び出し、egress を allow / audit / deny /
承認の判定で統制します。
ガードレール vs. ファイアウォール
コンテンツガードレール vs. ツール呼び出しファイアウォールに手を伸ばすとき —
そして両方を実行する方法。
AI エージェントのセキュリティ
完全なエージェントコントロールスタック:コンテンツ、ツール、MCP、egress。
過剰なエージェンシー
これらのレールが対処する脅威 — すべき以上のことをするエージェント。
7. 何が発火したかを確認する
発火したすべてのルールはマッチを記録します — ルールの種類、アクション、 ステージ、detail 文字列 — ワークスペースの Matches フィードに現れます。 マッチした部分文字列そのものは、Log raw content がオンのときのみ記録され、 それはデフォルトでオフです。フィードをガードレール、ルールの種類、アクション別に グループ化・フィルターして、エージェントルールのヒット率を監視し、誤検知を チューニングします。マッチフィード、 ロギングとプライバシー、 誤検知のチューニングを参照。8. 次にどこへ
出力ステージルール
Markdown Image Block と SQL Injection in Output のレスポンススクリーニングが
どう機能するか。
正規表現検出器
Agent ルールを拡張するために独自の RE2 パターンを作成します。
データ持ち出し
Markdown Image Block が閉じる持ち出しチャネル。
危険なツール呼び出し
コンテンツレールだけでは不十分な理由 — ファイアウォールとペアにします。
