跳转到主要内容
在一条规则拦截生产流量之前,你想知道它在正确的事情上触发, 而不是其他任何事情。OrcaRouter 为你提供三种姿态——观察影子执行——让你能够逐步推出,每一步都有可见性, 没有意外。 本页解释每种姿态在机制上的含义、如何在它们之间切换,以及 自治级别如何一步设置所有这些。

1. 三种姿态一览

姿态流量会发生什么机制何时使用
观察所有流量被允许;没有策略的调用被记录为覆盖缺口工作区级别观察模式开启;防护栏规则使用 flag 动作;防火墙 default_verdictaudit基线发现——在编写单条规则之前了解你的智能体实际做什么
影子流量被允许;策略进行评估,假设拦截被记录为 [shadow] would …防火墙策略上的每个策略 shadow_mode 标志开启安全的预生产验证——在策略接触流量之前确认它触发正确
执行真实判定生效——deny 拦截、sanitize 脱敏、pending_approval 挂起影子模式关闭;防护栏动作设为 block / mask;防火墙判定生效在你已在影子中验证策略之后的生产执行
角色要求。 任何工作区成员都可以读取策略、设置和已发现工具 视图;防火墙 EventsRuns 信息流需要 Developer 角色。 更改设置、策略动作或 shadow_mode 也需要 Developer 或更高级别。

2. 观察姿态——先衡量,后制定规则

观察姿态不是一个单一开关。它是三个独立机制的组合,共同产生 “允许一切,记录一切”:

防火墙观察模式(工作区设置)

当工具调用解析到完全没有策略——没有密钥附加也没有工作区 默认值——时,防火墙的工作区级别观察模式决定发生什么:
  • 观察模式开启: 调用被允许,并作为覆盖缺口记录。 Discovered Tools 视图从这些缺口事件中填充,精确显示你的 智能体在没有任何规则覆盖它们的情况下运行的工具。
  • 观察模式关闭: 调用被静默允许——与从未启用该功能的 工作区字节相同。
观察模式是缺口检测执行面。它只在没有策略解析时触发。它与 将策略设置为审计不同。

防火墙 audit 判定(每个策略默认值)

当策略确实解析但没有规则匹配工具调用时,策略的 default_verdict 适用。default_verdict 的默认值为 audit ——允许调用并记录以供审查。没有规则且没有配置变更的新策略 不拦截任何东西,也不静默允许任何东西:它审计它看到的一切。 audit 也是一个正常的规则判定。匹配并产生 audit 的规则让 调用通过并记录它——防火墙的防护栏审计模式类比。

防护栏 flag 动作(每条规则动作)

在防护栏侧,flag 动作是观察等价物:规则触发,匹配被记录在 Matches 信息流中,请求继续不变。不拦截。不脱敏。当你想衡量 一条规则——看它触发多频繁、触发什么——在承诺 blockmask 之前使用 flag
这三者共同产生观察姿态:观察模式捕获未覆盖的工具调用;audit 判定覆盖策略下但尚未在特定规则下的工具调用;flag 动作覆盖 你尚未准备好执行的防护栏检查。

3. 影子姿态——执行之前先验证

影子模式是防火墙策略上的每个策略标志shadow_mode: true)。 当它开启时:
  • 策略完全像在生产中那样评估每一次工具调用——规则被匹配, 判定被计算,参数谓词被测试。
  • 每个执行性判定(denysanitizepending_approval)在 到达工具之前被降级为 audit
  • 记录的原因前缀为 [shadow] would …,因此你可以在事件信息流 中精确看到什么会被拦截、净化或挂起。
影子模式是你的安全上线开关。编写一个策略,开启影子,将真实 流量指向它,观察事件和运行视图数小时或数天,确认策略在正确的 工具上触发,没有意外的东西,然后关闭影子模式开始执行。
防护栏在策略级别没有 shadow_mode 等价物——在切换到 blockmask 之前,使用每条规则的 flag 动作来观察单个防护栏检查。

4. 执行姿态——真实判定,真实后果

在执行姿态中,没有任何东西被降级:
  • 防火墙 deny → 智能体看到工具错误(MCP)或 HTTP 400 firewall_blocked(inbound 执行面)。错误命名工具和原因。 标记为 skip-retry
  • 防火墙 sanitize → 匹配的子串从工具参数中脱敏,净化后的 调用被转发。
  • 防火墙 pending_approval → 调用被挂起;智能体收到 HTTP 400 firewall_approval_pending 和要轮询的审批 id。
  • 防护栏 block → HTTP 400 guardrail_blocked,命名触发的防护栏 和规则。不消耗配额。
  • 防护栏 mask → 匹配被脱敏(例如 jane@acme.com[EMAIL]), 请求带净化后的文本继续。
要达到执行姿态:关闭防火墙策略上的 shadow_mode,并将防护栏 规则动作从 flag 更改为适当的 blockmask

5. 推荐的推出流程

1

观察——发现你的智能体做什么

开启工作区观察模式PUT /api/workspace/firewall/settingsfirewall_observe_mode: true)。让 防火墙没有策略(或一个 default_verdictaudit 的策略)。对你 想衡量的任何防护栏规则添加 flag 动作。观察 Discovered Tools 视图,随着你的智能体发出的每一次工具调用 填充进来,标记为 coveredgap。将此作为编写第一批策略规则 的输入——你在为真实流量编写规则,而不是假设流量。让这运行直到 Discovered Tools 视图稳定,你有足够的数据来编写 有意图的规则。
2

影子——执行之前先验证

编写一个带 shadow_mode: true 的防火墙策略。将其附加到你想 治理的密钥(或将其设为工作区默认)。对于防护栏,此阶段将规则 动作保持为 flag策略现在评估每一次真实工具调用并记录它会做什么。打开 EventsRuns 视图,按 [shadow] 前缀过滤。确认:
  • 它在你预期的工具和参数模式上触发。
  • 它不在你想允许的任何东西上触发(误报)。
调优规则,重新观察,重复。当影子日志看起来正确时,继续下一步。
3

执行——翻转开关

在策略上设置 shadow_mode: false。对于你用 flag 观察的任何 防护栏规则,根据适当情况将动作更改为 blockmask在第一个小时内监控 Events 信息流,寻找意外的拦截。自治审计 日志上的 Undo 动作让你可以在需要回滚时一键恢复到先前状态。

6. 自治级别——一次设置所有这些

逐条规则调优策略是精确的路径。自治级别是快速的那条—— 一个单一控制,原子性地在一个事务中设置你工作区的防火墙 防护栏姿态,支持一键撤销:
级别产生的姿态
permissive观察姿态:无执行策略,无防护栏,工作区观察模式开启——你看到一切,没有任何东西被拦截。映射到上面的观察步骤。
balanced默认判定 audit,但破坏性 shell 被拒绝;PII Shield 以仅审计模式运行(flag PII);观察模式关闭。了解你的流量形态后推荐的起始姿态。
tight完全执行:默认拒绝,破坏性 shell 和 SSRF 出站被拒绝;PII Shield + Secrets Blocker 防护栏被执行(筛查请求中的 PII 和密钥);观察模式关闭
通过 POST /api/workspace/firewall/autonomy(Developer+)应用。 Simulate 端点(GET /api/workspace/firewall/simulate?level=) 在你应用之前预览级别变更会做什么。
自治级别是上述相同机制上的便利层——它们设置 default_verdict、 观察模式、防火墙规则和防护栏规则动作。它们切换 shadow_mode; 那仍然是一个手动的每个策略控制。你总可以在应用级别后覆盖单个设置。

7. 机制图——哪个设置做什么

此表是权威参考。这四个术语是不同的——不要混淆它们:
术语类型它控制什么
观察模式工作区设置工具调用解析到无策略时的行为。开启 → 记录为缺口(Discovered Tools)。关闭 → 静默允许。
audit 判定策略/规则判定策略下匹配(或回退到默认)的工具调用的行为。允许 + 记录。默认的 default_verdict
flag 动作防护栏规则动作防护栏检查允许流量并记录匹配。防护栏的观察而不执行动作。
shadow_mode每个防火墙策略标志将所有执行性判定(deny/sanitize/pending_approval)降级为 audit,并在原因前加 [shadow] would … 前缀。

安全智能体基线

零信任智能体安全的推荐起始姿态和五分钟设置。

智能体防火墙

策略、规则、判定、影子模式和 MCP 网关的完整参考。
执行模式不是二进制的开/关。经历观察 → 影子 → 执行,你的规则 在阻止真实流量之前就已在真实流量上得到了验证。