CI/CD Security Gate
El CI/CD Security Gate desplaza Beak AI Security hacia la izquierda, dentro del proceso de compilación. Mientras que Red Teaming le indica que un agente no es seguro y el Threat Dashboard le indica que una solicitud fue bloqueada en producción, el gate impide que un agente inseguro llegue a producción en absoluto. Un pipeline publica lo que conoce sobre la compilación y el gate responde con un resultado de aprobación o fallo junto con los hallazgos que lo respaldan.
A diferencia de todas las demás capacidades de Beak AI Security, el gate no tiene pantalla propia — es una API invocada desde un pipeline de compilación.
Endpoint
POST /aisecurity/cicd/evaluate
La solicitud se autentica exactamente igual que el resto de la API de AI Security, con un token bearer para el tenant. No está controlada por permisos: un pipeline no tiene un usuario interactivo de Beak al que asignar un rol, por lo que el gate se clasifica como endpoint de máquina y no se verifica ningún permiso authz.
El estado de la respuesta es el resultado del gate, lo que lo hace utilizable directamente como paso de compilación:
200— El gate ha sido aprobado.422— El gate ha fallado. Un pipeline que falla la compilación ante una respuesta no-2xx no necesita parsear el resultado en absoluto.
Comprobaciones
Hay cuatro comprobaciones disponibles. Cada una se ejecuta únicamente si su clave está presente en el cuerpo de la solicitud, de modo que un pipeline puede adoptar el gate de forma incremental y añadir comprobaciones a medida que la evidencia correspondiente esté disponible.
Secretos Codificados en Plantillas de Prompt
- Clave —
prompt_templates(lista de cadenas de texto) - Severidad —
critical
Analiza cada plantilla de prompt suministrada en busca de credenciales que hayan sido pegadas en un prompt. Se reconocen siete patrones: asignaciones genéricas de API key, asignaciones genéricas de secreto, contraseña o token, claves de estilo OpenAI con sk-, tokens bearer, bloques de clave privada PEM, tokens de acceso personal de GitHub (ghp_) e IDs de clave de acceso de AWS (AKIA).
Cualquier coincidencia falla el gate. El hallazgo indica el índice de la plantilla infractora y cuántas coincidencias contenía, de modo que el registro del pipeline apunta al prompt exacto sin volver a imprimir el secreto.
Tasa de Aprobación del Red Team
- Claves —
redteam_pass_rate(0–1), y opcionalmenteredteam_min_pass_rate(valor predeterminado0.8) - Severidad —
highen caso de fallo
Compara la tasa de aprobación de la campaña de red team más reciente con el mínimo requerido por la compilación. Suministrar redteam_pass_rate sin redteam_min_pass_rate aplica el valor predeterminado de 0.8.
Validez del AIBOM
- Clave —
aibom_valid(booleano) - Severidad —
mediumen caso de fallo
Falla el gate cuando el AIBOM está ausente o desactualizado, de modo que un despliegue no puede publicarse con un inventario que ya no describe lo que se está desplegando.
CVE de Contenedores
- Claves —
container_cves(lista de IDs de CVE), y opcionalmentemax_critical_cves(valor predeterminado0) - Severidad —
criticalen caso de fallo
Falla cuando el número de CVE encontradas en la imagen del contenedor supera la cantidad permitida. El valor predeterminado de 0 significa que cualquier CVE falla el gate. El hallazgo devuelve la lista de CVE para que el registro de compilación registre exactamente lo que se encontró.
Solicitud
{
"prompt_templates": ["You are a support agent. Use api_key=..."],
"redteam_pass_rate": 0.92,
"redteam_min_pass_rate": 0.85,
"aibom_valid": true,
"container_cves": ["CVE-2025-1234"],
"max_critical_cves": 0
}
Respuesta
El resultado se devuelve en el sobre estándar de la API de Beak, con el resultado del gate en data:
{
"status": "success",
"message": "Gate evaluation complete",
"data": {
"gate_passed": false,
"checks_run": 4,
"checks_passed": 3,
"checks_failed": 1,
"findings": [
{
"check": "container_cves",
"severity": "critical",
"passed": false,
"description": "1 CVE(s) found in container (max allowed: 0)",
"cves": ["CVE-2025-1234"]
}
]
}
}
gate_passed—falsesi alguna comprobación falló. Refleja el estado HTTP.checks_run,checks_passed,checks_failed— Conteos sobre los hallazgos efectivamente producidos.checks_runcuenta únicamente las comprobaciones cuyas claves fueron suministradas.findings— Una entrada por cada comprobación ejecutada, cada una concheck,severity,passedy unadescriptionlegible por humanos, además de detalles específicos de cada comprobación.
Nota: Las comprobaciones aprobadas también se notifican, con severidad
info. La lista de hallazgos es el registro completo de lo que fue evaluado, no solo de lo que falló.
Cómo se Ve una Comprobación Omitida
Una comprobación que no se suministra se omite silenciosamente — no produce ningún hallazgo y no falla el gate. Dos casos son fáciles de confundir con una aprobación:
- Omitir una clave por completo. Un cuerpo con solo
aibom_validejecuta una comprobación ychecks_runreporta1. - Suministrar una lista vacía de
prompt_templatesocontainer_cves. Una lista vacía omite la comprobación en lugar de aprobarla, por lo que un escáner que no produjo salida y un escáner que no logró ejecutarse son indistinguibles para el gate.
Compare checks_run con el número de comprobaciones que el pipeline pretendía enviar. Un gate que fue aprobado porque no se comprobó nada es el modo de fallo que vale la pena prevenir.
Buenas Prácticas
- Falle la compilación según el estado HTTP — Trate cualquier respuesta no-
200como una detención. No requiere parsear el resultado y no puede ser anulado por un cambio en el cuerpo de la respuesta. - Verifique
checks_run— Un gate en verde no significa nada si la evidencia nunca llegó. Compruebe que el conteo coincide con lo que el pipeline pretendía enviar. - Alimente el gate con salida real del escáner — Conecte
container_cvesal análisis de imagen yredteam_pass_ratea la campaña más reciente en lugar de a valores codificados, o el gate solo confirmará sus propios valores predeterminados. - Establezca
max_critical_cvesen0y manténgalo así — La tolerancia existe para la adopción gradual en un entorno existente; aumentarla permanentemente convierte la comprobación en una formalidad. - Ejecute el gate antes de publicar la imagen, no después — El gate solo es un control si un fallo impide que el artefacto esté disponible para su despliegue.
Páginas Relacionadas
- Red Teaming — Produce la tasa de aprobación de campaña que el gate aplica.
- AIBOM — El inventario cuya validez comprueba el gate.
- Atlas Browser — Mapea hallazgos con técnicas adversariales para revisión previa al despliegue.
- Threat Dashboard — Protección en tiempo de ejecución para lo que sí llega a producción.
- Overview — Descripción general de alto nivel del producto Beak AI Security.