OPA Gatekeeper 通过 Validating Webhook 将 Rego 策略注入 K8s 准入链路,强制禁止 latest 镜像标签、缺失 resource limits 或 hostPath 挂载等高风险配置。
![]()
一、禁止 latest 标签的 ConstraintTemplate
rego
package k8sdisallowedtags
violation[{"msg": msg}] {
container := input.review.object.spec.containers[_]
endswith(container.image, ":latest")
msg := sprintf("container <%v> 禁止使用 latest 标签", [container.name])
}yaml
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sDisallowedTags
metadata:
name: disallow-latest
spec:
match:
kinds:
- apiGroups: [""]
kinds: ["Pod"]