Saltar al contenido principal

Controles personalizados (OPA / Rego)

Los clientes pueden escribir sus propios controles en Rego, el lenguaje de políticas de Open Policy Agent (OPA). Los controles personalizados se guardan en la Plataforma, se versionan y se envían completos con cada solicitud de evaluación. Se evalúan en un runtime de OPA sandboxeado — nunca como código nativo.

Ejemplo (ilustrativo)

# Rego — rechaza buckets S3 sin cifrado por defecto
package nimbusguard.custom.s3_encryption

default allow = false

allow {
input.resource.resource_type == "aws_s3_bucket"
input.resource.configuration.server_side_encryption == true
}

El control devuelve un resultado (status, message, evidence) que el Motor convierte en un EvaluationResult estructurado.

:::warning Placeholder ⚠️ Reemplaza el snippet ilustrativo con el contrato real de Rego: forma del input disponible, campos de salida esperados y cómo el resultado mapea a PASS/FAIL. :::