PolicyException
Gezielte Ausnahme statt aufgeweichter Policy. CEL:
policies.kyverno.io/v1, policyRefs
(Name + Kind) plus CEL-matchConditions;
images/allowedValues reicht die
Exception als
exceptions.allowedImages/exceptions.allowedValues
in die CEL-Auswertung, expiresAt seit 1.19. Legacy
kyverno.io/v2 (Policy + Regeln, Wildcard
*): deprecated, Removal mit 1.20.
Default: deaktiviert (Helm
features.policyExceptions.enabled). Aktivierung per
--enablePolicyException +
--exceptionNamespace. Leer wirkt je nach Engine
anders: Legacy-Exceptions greifen dann gar nicht, CEL-Exceptions
aus allen Namespaces (wie *). Also
immer genau einen Namespace setzen, Erstellung per RBAC und
GitOps kontrollieren.
ImageValidatingPolicy vor 1.19.1: eine
passende Exception ignoriert
images/allowedValues und schaltet die
Signaturprüfung für die ganze Ressource ab
(GHSA-5cjf-wwfg-pj4c). Mindestversion siehe Box „Security:
mindestens 1.19.1“.
Autogen für Pod-Controller
Pod-Regeln werden automatisch auf die Pod-Controller
ausgeweitet. CEL: Deployment, DaemonSet, StatefulSet,
ReplicaSet, Job, CronJob, Auswahl über
spec.autogen.podControllers.controllers; seit
1.19.1 auch Workload-CRDs (JobSet, RayJob …) als
<resource>.<version>.<group>.
Legacy zusätzlich ReplicationController, Annotation
pod-policies.kyverno.io/autogen-controllers
(none schaltet ab).
Achtung: greift Pod-Controller-Autogen (bei
Pod-Policies Default, auch ohne podControllers),
erzeugt Kyverno keine native VAP bzw. MAP (Grund
im Policy-Status).