Policy as Code com OPA e Kyverno: governança automática em Kubernetes
Políticas de segurança documentadas em wiki que ninguém lê não protegem nada. Policy as Code transforma regras de segurança em código executável que é verificado automaticamente em cada deploy.
O problema das políticas que ninguém segue
Políticas de segurança em forma de documentos têm um problema fundamental: dependem de humanos para serem aplicadas. Desenvolvedores sob pressão ignoram políticas. Revisores de código cansados deixam passar. Policy as Code resolve isso transformando políticas em verificações automáticas que o sistema aplica sem exceção.
Open Policy Agent (OPA): o padrão universal
OPA é um engine de políticas open source que usa a linguagem Rego para definir regras. Funciona como um sidecar que intercepta requisições e verifica se estão em conformidade com as políticas definidas. Usado no Kubernetes como admission controller, verifica cada recurso antes de ser criado ou modificado.
Kyverno: políticas Kubernetes-native
Kyverno é um admission controller que define políticas diretamente como recursos Kubernetes (YAMLs) — sem precisar aprender Rego. Para times que já conhecem Kubernetes, a curva de aprendizado é mínima.
Exemplos de políticas comuns
- Bloquear containers como root — qualquer Pod com
runAsRoot: trueé rejeitado pelo admission controller - Exigir resource limits — containers sem CPU/memory limits não são criados
- Exigir imagens de registry aprovado — só imagens do registry interno são permitidas em produção
- Exigir labels obrigatórios — todos os recursos devem ter tags de time, produto e ambiente
- Bloquear privilégios elevados — hostNetwork, hostPID e capabilities desnecessárias são bloqueados por padrão
Próximo passo
Quer automatizar a governança de segurança nos seus clusters Kubernetes?
A rune.dev implementa Policy as Code com OPA e Kyverno em ambientes Kubernetes de produção.
Falar com um especialista →Precisa de apoio técnico no seu ambiente?
Diagnóstico sem compromisso. Retorno em até 48h úteis.