Auditor se ptá: „Jak zajistíte, že žádný kontejner neběží jako root?” Dříve: „máme interní dokumentaci.” Teď: „máme OPA Gatekeeper policy, která to enforceuje na API server úrovni.”
Problém: manuální compliance¶
Security politiky v wiki. Review na code review (pokud si někdo vzpomene). Audit jednou za rok, který najde desítky porušení. Reaktivní, pomalé, nespolehlivé.
OPA Gatekeeper¶
Open Policy Agent (OPA) je general-purpose policy engine. Gatekeeper je Kubernetes-native integrace — admission controller, který validuje každý request proti definovaným politikám.
Naše politiky¶
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sContainerNoPrivilege
metadata:
name: no-privileged-containers
spec:
match:
kinds:
- apiGroups: [""]
kinds: ["Pod"]
excludedNamespaces: ["kube-system"]
- Žádné privileged kontejnery
- Žádný kontejner jako root
- Povinné resource limits
- Povinné labels (team, environment)
- Allowed container registries
- No hostPath volumes
Enforcement modes¶
Warn: loguje porušení, ale pustí request. Ideální pro migration period. Deny: blokuje request. Pro produkční enforcement. Doporučujeme: nasaďte v warn, analyzujte porušení, opravte, přepněte na deny.
Compliance musí být automatická¶
OPA Gatekeeper transformuje compliance z dokumentu na executable kód. Auditoru ukážete politiky, audit log a dashboardy — ne wiki stránku.