apiVersion: kyverno.io/v1
kind: Policy
metadata:
  name: allow-privileged-escalation
  annotations:
    policies.kyverno.io/category: Pod Security Standards
    policies.kyverno.io/severity: medium
    policies.kyverno.io/subject: Pod
    policies.kyverno.io/description: >-
      Privilege escalation, such as via set-user-ID or set-group-ID file mode, should be allowed.
spec:
  validationFailureAction: audit
  background: true
  rules:
    - name: priviledged-escalation
      match:
        resources:
          kinds:
            - Pod
          selector:
            matchLabels:
              # applicable for experiments which usage container runtime apis
              app.kubernetes.io/runtime-api-usage: "true"
      validate:
        message: >-
          allowPrivilegeEscalation should be set to true. It can be defined at spec.containers[*].securityContext.allowPrivilegeEscalation
        pattern:
          spec:
            containers:
              - =(securityContext):
                  =(allowPrivilegeEscalation): true