inbound não tem destino para verificar; uma cláusula de argumento em
inbound ainda não tem argumentos em tempo de chamada.
Esta página é o guia focado nos quatro stages do agent firewall: o que cada
superfície observa, quando uma regra deve mirá-la, e a maneira concreta como a
mesma intenção é expressa em stages diferentes. Para o vocabulário completo de
regras, veja Regras do Firewall; para o modelo de
política em torno dele, Firewall.
1. Os quatro stages em resumo
Cada avaliação é carimbada com exatamente um stage. Uma regra sem stage ("")
se aplica a todos eles; uma regra fixada a um stage só dispara ali.
| Stage | O que a superfície vê |
|---|---|
inbound | Ferramentas que o agente anuncia na requisição |
response | tool_calls que o modelo emite em sua resposta |
mcp | Um tools/call despachado através do gateway MCP |
egress | Um host / IP / CIDR outbound que uma ferramenta alcança |
stage ao criar através da
API.
O stage governa quais dados estão no escopo, não o quão estrito é o
veredito. Um
deny é um deny em qualquer stage; o que muda é se a regra tem
os argumentos, o nome da ferramenta ou o destino que precisa para
corresponder.2. inbound — as ferramentas que um agente anuncia
A superfície mais antecipada. Antes de o modelo sequer rodar, seu agente envia
uma lista de definições de ferramenta que está disposto a deixar o modelo
chamar. O stage inbound vê esse conjunto de ferramentas anunciado e pode
bloquear uma ferramenta perigosa antes que o modelo sequer possa
escolhê-la.
Não há argumentos em tempo de chamada neste stage — o modelo ainda não decidiu
como chamar nada — então as regras inbound correspondem ao nome da ferramenta
(e opcionalmente à sua skill proprietária), não a args_match_json.
Uma chamada negada aqui retorna HTTP 400 com o código firewall_blocked,
nomeada conforme a ferramenta e o motivo, e marcada como skip-retry.
3. response — as chamadas de ferramenta que o modelo emite
Uma vez que o modelo responde, ele pode emitir uma ou mais tool_calls —
invocações concretas com argumentos reais. O stage response vê essas, então é
aqui que as regras em nível de argumento pertencem: não “bloquear shell.exec”
mas “bloquear shell.exec apenas quando o comando for rm -rf”.
sanitize
funciona aqui — ele redige substrings correspondentes dos argumentos da chamada
e encaminha a chamada limpa. (O sanitize redige apenas os argumentos da
chamada de ferramenta; ele nunca toca no conteúdo que uma ferramenta
retorna.)
4. mcp — chamadas despachadas através do gateway
Quando um agente alcança uma ferramenta através do
gateway MCP do OrcaRouter, cada tools/call é
avaliado no stage mcp antes de ser despachado ao servidor registrado. Esta
é a superfície que governa o tráfego de Model Context Protocol — o mesmo
vocabulário de glob / argumento / veredito que response, aplicado ao dispatch
de MCP.
Um block aqui aparece como um erro de ferramenta (firewall deny: <reason>) em vez de uma falha de transporte, de modo que o modelo vê a rejeição
e pode reagir — escolher outra ferramenta, perguntar ao usuário, ou parar.
5. egress — o destino outbound que uma ferramenta alcança
A última superfície. Quando uma ferramenta reporta um destino de rede outbound,
o stage egress corresponde a ele — a superfície de SSRF e exfiltração de
dados. As regras de egress não correspondem a um padrão de nome de ferramenta
sozinho; elas correspondem a uma lista de host / IP / CIDR:
169.254.169.254) e as faixas RFC-1918 são as
coisas canônicas a negar. Veja
Regras do Firewall §6
para a polaridade allow/deny.
Nenhum preset traz regras de CIDR. A postura de SSRF do nível de autonomia
tight
autonomy level
nega nomes de ferramenta com formato de fetch (ex.: http_fetch,
web_search, fetch_url); um deny de egress baseado em destino é algo que você
cria para os hosts e faixas que seus agentes nunca devem alcançar.6. Escolhendo o stage certo
O mesmo objetivo de segurança frequentemente tem um melhor stage. Combine a intenção com a superfície que de fato carrega os dados de que você precisa:Impedir que uma ferramenta seja sequer oferecida → inbound
Impedir que uma ferramenta seja sequer oferecida → inbound
Se o modelo nunca deve sequer ver uma ferramenta, negue-a em
inbound. O
block aterrissa antes da chamada ao modelo, então não custa tokens de
modelo.Permitir uma ferramenta mas restringir seus argumentos → response (ou mcp)
Permitir uma ferramenta mas restringir seus argumentos → response (ou mcp)
As cláusulas de argumento precisam dos argumentos escolhidos pelo modelo,
que só existem em
response e mcp. Negue em um argumento perigoso, ou
sanitize para remover um valor de segredo ou PII que o agente colocou em
um argumento.Governar o tráfego de Model Context Protocol → mcp
Governar o tráfego de Model Context Protocol → mcp
Chamadas roteadas através do gateway MCP são avaliadas em
mcp antes do
dispatch — o ponto de estrangulamento para as ferramentas de cada servidor
registrado.Bloquear onde um agente pode se conectar → egress
Bloquear onde um agente pode se conectar → egress
Regras baseadas em destino — bloquear o IP de cloud-metadata, negar um CIDR,
fazer allowlist dos seus hosts aprovados — só fazem sentido em
egress.Aplicar a cada superfície → deixe o stage vazio
Aplicar a cada superfície → deixe o stage vazio
Uma regra sem stage roda em todos os quatro. Use-a para uma regra de estilo
default_verdict abrangente, ou uma ferramenta que você nega em todo lugar
onde ela aparece.7. Stages e shadow mode
A flagshadow_mode de uma política é independente do stage. Ligue-a e cada
veredito de enforcement — em qualquer stage — é rebaixado para audit e o
motivo recebe o prefixo [shadow] would …, de modo que você possa confirmar
que uma regra dispara na superfície certa antes de ela alterar o tráfego ao
vivo. Veja Shadow mode e
Modos de enforcement.
8. Onde os stages se encaixam no quadro maior
Os quatro stages são o onde do enforcement; o resto do modelo é o o quê e o quem.Vereditos
O que cada stage pode fazer uma vez que corresponde — allow, audit, deny,
sanitize, reter para aprovação, limitar custo.
Allow-listing de ferramentas
Use
inbound para restringir o conjunto de ferramentas que um agente
anuncia.Validar argumentos
Crie cláusulas de argumento
response / mcp que controlam uma ferramenta
por como ela é chamada.Controle de egress
Bloqueie destinos outbound na superfície
egress — a fronteira de
exfiltração.