Pular para o conteúdo principal

infraguard policy

Gerenciar políticas de conformidade.

Subcomandos

list

Listar todas as políticas disponíveis:

infraguard policy list

get

Obter detalhes de uma 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

Atualizar a biblioteca de políticas:

infraguard policy update

new

Gerar a estrutura de uma nova regra personalizada (esqueleto Rego + fixtures de teste):

# Gerar uma regra para ROS e Terraform
infraguard policy new ecs-instance-must-have-owner-tag \
--iac both --severity medium \
--resource-type ALIYUN::ECS::Instance \
--tf-resource-type alicloud_instance

# Gerar o esqueleto de um pacote de conformidade
infraguard policy new --pack my-team-baseline

Os arquivos gerados ficam sob --dir (padrão ./policies) e podem ser usados diretamente com infraguard scan -p ./policies <template> e infraguard policy test. Consulte Criando Regras Personalizadas.

FlagDescriçãoPadrão
--iacIaC alvo: ros, terraform ou bothboth
--severityhigh, medium ou lowmedium
--resource-typeTipo de recurso ROS (repetível)
--tf-resource-typeTipo de recurso Terraform (repetível)
--dirDiretório raiz de saída./policies
--name-en / --name-zhNome da regraID da regra
--desc-en / --desc-zhDescrição da regraTODO
--no-testNão gerar fixtures de testefalse
--forceSobrescrever arquivos existentesfalse
--packGerar o esqueleto de um pacote com o ID fornecido

test

Executar testes de comportamento para regras usando suas 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 regra, as fixtures sob <dir>/testdata/aliyun/rules/<rule>/ são avaliadas: fixtures compliant não devem produzir nenhuma violação da regra, e fixtures violation devem produzir pelo menos uma. O código de saída é 0 quando todos os casos passam, 1 em caso de falha, e 2 quando nenhuma fixture é encontrada (a menos que --allow-empty). Consulte Testando Regras.

FlagDescriçãoPadrão
--dirDiretório raiz contendo rules/ e testdata/./policies
--ruleTestar apenas o ID de regra fornecido (repetível)todas
--iacIaC a testar: ros, terraform ou bothboth
--formatFormato de saída: table ou jsontable
--allow-emptySair com 0 mesmo quando nenhuma fixture é encontradafalse

validate

Validar políticas personalizadas:

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

format

Formatar arquivos de políticas:

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

clean

Limpar o diretório de políticas do usuário:

infraguard policy clean # Modo interativo com confirmação
infraguard policy clean --force # Pular confirmação
infraguard policy clean -f # Flag curto

Remove todas as políticas de ~/.infraguard/policies/. Não afeta políticas incorporadas ou políticas do workspace.

Para mais detalhes, consulte Gerenciando Políticas.