Protección de prompts y respuestas
Cómo AI-FW inspecciona prompts y respuestas, reglas integradas y personalizadas, orden de evaluación y acciones.
AI-FW inspecciona prompts inbound antes del modelo y respuestas outbound antes del cliente. Las reglas integradas cubren vectores habituales de ataque y cumplimiento; las reglas personalizadas amplían la protección a sus políticas.
Reglas integradas#
| Regla | Dirección | Acción | Detección |
|---|---|---|---|
| Detección de jailbreak | inbound | block | Solicitudes para ignorar instrucciones previas, sobrescritura del sistema, modo DAN y evasión de seguridad. |
| Enmascaramiento de PII | inbound | mask | Números de seguridad social, tarjetas, emails y API keys, sustituidos por [REDACTED_*]. |
| Filtro de toxicidad | outbound | block | Patrones de odio, discriminación y acoso. |
| Protección contra exfiltración | outbound | block | Prompts de sistema filtrados, IP internas, credenciales y claves privadas. |
Las reglas integradas aparecen como System en Rules Manager y pueden habilitarse o deshabilitarse individualmente. Las personalizadas se agregan, editan, habilitan, deshabilitan y eliminan.
Evaluación de reglas#
Orden fijo de izquierda a derecha. El primer resultado decisivo prevalece; las etapas siguientes solo ocurren si no hay decisión:
| # | Paso | Resultado |
|---|---|---|
| 1 | Reglas integradas | Ejecuta jailbreak, enmascaramiento PII, toxicidad y exfiltración. |
| 2 | Reglas de bloqueo | Rechaza con 400 guardrail_violation; bloquear prevalece sobre aceptar. |
| 3 | Reglas de enmascaramiento | La primera coincidencia reescribe contenido y termina el grupo. |
| 4 | Aceptación y registro | La primera coincidencia permite; log_only evita guardar vistas previas. |
| 5 | Nivel semántico | Evalúa políticas en lenguaje natural. Consulte la guía semántica. |
| 6 | Regla implícita | Aplica la acción predeterminada: permitir o bloquear. |
Si coincide una regla block, no se ejecutan acciones posteriores aunque también coincida accept. El grupo de bloqueo admite reglas de texto: regex, palabras clave, límites de tokens, modelo y usuario.
Acciones#
| Acción | Efecto |
|---|---|
| block | Rechaza con 400 guardrail_violation y prevalece. |
| mask | Sustituye texto coincidente antes de reenviarlo. |
| log_only | Acepta sin persistir contenido y registra la coincidencia. |
| accept | Acepta y registra; vistas previas en auditoría. |
Opciones por regla#
- Skip semantic check: al coincidir, omite el nivel semántico.
- Source IP / subnet: aplica si la IP cliente está en el CIDR.
- Destination IP / subnet: aplica si IP backend resuelta está en el CIDR.
- Key mode / streaming: fija clave upstream y modo streaming. Consulte Identidad y acceso.
Solicitud bloqueada#
Las transacciones bloqueadas devuelven HTTP 400 con error estructurado:
HTTP 400
{
"error": {
"message": "The transaction was intercepted and blocked by corporate AI security policy.",
"type": "guardrail_violation",
"code": "prompt_injection_detected",
"details": { "policy_id": "BUILTIN-JAILBREAK", "timestamp": "2025-01-15T10:00:00Z" }
}
}La respuesta incluye X-Gateway-Security: Violated.
Reescrituras que preservan estructura#
El enmascaramiento PII y el reemplazo del modelo predeterminado conservan JSON. Solo cambian valores de cadenas JSON y el campo model; herramientas, funciones, streaming y otros campos pasan sin cambios de bytes.
Opciones fail-open#
Por defecto, el gateway falla de forma segura: error del scanner o configuración ausente bloquea. Settings -> Fail-open Options ofrece tres excepciones opcionales, desactivadas por defecto:
| Control | Cuando se activa |
|---|---|
| Scanner exceptions | Una excepción del scanner de prompts permite la solicitud y registra auditoría. |
| Response-scan exceptions | Una excepción del scanner de respuestas reenvía sin analizar y nunca guarda en caché. |
| Compression gate | Si no hay nivel semántico, comprime sin validar; desviaciones bajo el umbral se rechazan. |
Cada evento fail-open se registra con advertencia y auditoría.