1. La política de seguridad por clave: dos campos en una clave
Una guardrail examina el texto que fluye a través de un modelo (PII, secretos, jailbreaks). Una política de firewall gobierna las llamadas a herramienta que emite un agente (qué herramientas, qué servidores MCP, qué hosts). Ambas son políticas nombradas, con alcance de espacio de trabajo — autoradas una vez, compartidas en todo el espacio de trabajo — y una clave opta por una específica a través de dos campos:| Campo | Vincula | Establece en consola |
|---|---|---|
guardrail_id | La guardrail que examina los prompts y respuestas de esta clave. | Developer+ |
firewall_policy_id | La política de firewall que evalúa las llamadas a herramienta de esta clave. | Developer+ |
/console/token. Establecer
cualquiera de ellos es una acción Developer+ — las políticas en sí también
se autoran como Developer+ (ver
Alcance y claves).
Estos dos campos son independientes. Una clave puede adjuntar una guardrail y
no una política de firewall, lo inverso, ambas, o ninguna — cada plano se
resuelve por su cuenta. Dejar un campo sin establecer (
0) no es lo mismo que
apagar la aplicación; ver §3.2. Un ejemplo concreto
Digamos que la guardrail por defecto de tu espacio de trabajo marca PII pero la deja pasar, y la política de firewall por defecto audita cada llamada a herramienta. Eso está bien para la mayoría de los agentes — pero tu agente de finanzas maneja SSNs de clientes y nunca debería llamar a una herramienta de shell. Autora unafinance-guardrail más estricta (bloquea PII por completo) y
una finance-firewall (lista de permitidos solo con las tres herramientas que
necesita), luego vincula ambas a la clave de ese agente:
12 y sus llamadas a herramienta son evaluadas por la política 8 —
mientras cada otra clave en el espacio de trabajo sigue ejecutando los valores
por defecto del espacio de trabajo. El propio código del agente nunca cambia;
sigue llamando a https://api.orcarouter.ai/v1/... con su clave sk-orca-…
exactamente como antes.
3. Resolución: la regla que atrapa a la gente
Para cada solicitud, el gateway resuelve la guardrail activa y la política de firewall activa de manera independiente. El orden se ve igual para ambas — adjunto primero, valor por defecto del espacio de trabajo segundo — pero divergen en un caso.Resolución de guardrail
Adjunta y habilitada → úsala
Adjunta y habilitada → úsala
El
guardrail_id de la clave apunta a una guardrail que existe y está
habilitada. Esa guardrail examina la solicitud.Adjunta pero DESHABILITADA o eliminada → sin guardrail
Adjunta pero DESHABILITADA o eliminada → sin guardrail
Deshabilitar la guardrail adjunta es un interruptor de apagado. La clave
no obtiene ningún examen de contenido — no hace fallback al valor por
defecto del espacio de trabajo. Esto es deliberado: adjuntar una guardrail y
deshabilitarla es cómo apagas el examen para esa clave.
Sin establecer (0) → valor por defecto del espacio de trabajo
Sin establecer (0) → valor por defecto del espacio de trabajo
Sin
guardrail_id en la clave. La guardrail por defecto habilitada del
espacio de trabajo aplica, si hay una establecida.Ninguna → sin aplicación
Ninguna → sin aplicación
Sin adjunto y sin valor por defecto del espacio de trabajo → la solicitud
pasa sin examen de contenido.
Resolución de firewall
Adjunta y habilitada → úsala
Adjunta y habilitada → úsala
El
firewall_policy_id de la clave apunta a una política que existe y está
habilitada. Esa política evalúa las llamadas a herramienta de la clave.Adjunta pero DESHABILITADA → valor por defecto del espacio de trabajo
Adjunta pero DESHABILITADA → valor por defecto del espacio de trabajo
Aquí está la diferencia. Un adjunto de firewall deshabilitado hace
fallback a la política de firewall por defecto del espacio de trabajo —
no apaga la aplicación. Deshabilitar un adjunto de firewall revierte la
clave al valor por defecto del espacio de trabajo; no deja la clave sin
protección.
Sin establecer (0) → valor por defecto del espacio de trabajo
Sin establecer (0) → valor por defecto del espacio de trabajo
Sin
firewall_policy_id en la clave → aplica la política de firewall por
defecto habilitada del espacio de trabajo.4. Cómo se ve un block
Cuando una política vinculada deniega una solicitud, el llamante ve un error estructurado — el agente puede reaccionar en vez de fallar:| Plano | Código de error | HTTP | Coste |
|---|---|---|---|
| Guardrail | guardrail_blocked | 400 | Ninguno — un bloqueo de entrada se dispara antes de la medición; un bloqueo de salida reembolsa. Marcado skip-retry. |
| Firewall (inbound) | firewall_blocked | 400 | Un bloqueo inbound se dispara antes de la llamada al modelo, así que no hay tokens de modelo. Skip-retry. |
| Firewall (retenido) | firewall_approval_pending | 400 | Retenido para aprobación humana; el agente hace polling y reenvía una vez aprobado. |
5. Dónde ir a continuación
Alcance y claves
El modelo completo de tres niveles — espacio de trabajo, política, clave — y
cada campo que lleva una clave.
El objeto token
Cada campo en una clave:
model_limits, allow_ips, credit_limit_usd,
expired_time, y los dos adjuntos de política.Guardrails
Autora la política de contenido que vinculas vía
guardrail_id — reglas,
entidades PII, acciones y presets.Firewall
Autora la política de llamadas a herramienta que vinculas vía
firewall_policy_id — veredictos, superficies y niveles de autonomía.¿Quieres establecer toda la postura de tu espacio de trabajo de una sola vez en
vez de vincular claves una por una? Un nivel de autonomía escribe ambos
planos — guardrails y firewall — a la vez. Luego adjunta políticas más estrictas
en las pocas claves que necesitan ir más allá del valor por defecto del espacio
de trabajo. Ver
Guardrails vs Firewall.
