Saltar al contenido principal

infraguard policy

Gestionar políticas de cumplimiento.

Subcomandos

list

Listar todas las políticas disponibles:

infraguard policy list

get

Obtener detalles de una política específica:

infraguard policy get rule:aliyun:ecs-instance-no-public-ip
infraguard policy get pack:aliyun:mlps-level-3-pre-check-compliance-pack

update

Actualizar la biblioteca de políticas:

infraguard policy update

new

Generar una nueva regla personalizada (esqueleto Rego + fixtures de prueba):

# Generar una regla para ROS y Terraform
infraguard policy new ecs-instance-must-have-owner-tag \
--iac both --severity medium \
--resource-type ALIYUN::ECS::Instance \
--tf-resource-type alicloud_instance

# Generar un esqueleto de paquete de cumplimiento
infraguard policy new --pack my-team-baseline

Los archivos generados se ubican bajo --dir (predeterminado ./policies) y pueden usarse directamente con infraguard scan -p ./policies <template> y infraguard policy test. Consulte Crear Reglas Personalizadas.

FlagDescripciónPredeterminado
--iacIaC objetivo: ros, terraform, o bothboth
--severityhigh, medium, o lowmedium
--resource-typeTipo de recurso ROS (repetible)
--tf-resource-typeTipo de recurso Terraform (repetible)
--dirDirectorio raíz de salida./policies
--name-en / --name-zhNombre de la reglaID de la regla
--desc-en / --desc-zhDescripción de la reglaTODO
--no-testNo generar fixtures de pruebafalse
--forceSobrescribir archivos existentesfalse
--packGenerar un esqueleto de paquete con el ID indicado

test

Ejecutar pruebas de comportamiento para las reglas usando sus fixtures:

infraguard policy test --dir ./policies
infraguard policy test --dir ./policies --rule my-rule --iac terraform
infraguard policy test --dir ./policies --format json

Para cada regla, se evalúan las fixtures bajo <dir>/testdata/aliyun/rules/<rule>/: las fixtures compliant no deben producir ninguna violación de la regla, y las fixtures violation deben producir al menos una. El código de salida es 0 cuando todos los casos pasan, 1 en caso de fallo, y 2 cuando no se encuentran fixtures (a menos que se use --allow-empty). Consulte Probar Reglas.

FlagDescripciónPredeterminado
--dirDirectorio raíz que contiene rules/ y testdata/./policies
--ruleProbar solo el ID de regla indicado (repetible)todas
--iacIaC a probar: ros, terraform, o bothboth
--formatFormato de salida: table o jsontable
--allow-emptyFinalizar con 0 aunque no se encuentren fixturesfalse

validate

Validar políticas personalizadas:

infraguard policy validate my-rule.rego
infraguard policy validate ./policies/ --lang es

format

Formatear archivos de políticas:

infraguard policy format rule.rego
infraguard policy format rule.rego --write
infraguard policy format rule.rego --diff

clean

Limpiar el directorio de políticas del usuario:

infraguard policy clean # Modo interactivo con confirmación
infraguard policy clean --force # Omitir confirmación
infraguard policy clean -f # Flag corto

Elimina todas las políticas de ~/.infraguard/policies/. No afecta las políticas integradas ni las políticas del espacio de trabajo.

Para más detalles, consulte Gestión de Políticas.