Kyverno Certified Associate study materials
Kyverno Certified Associate study resources

Kyverno Certified Associate key terms

Kyverno Certified Associate · Get comfortable with the vocabulary.

AdmissionReview

The Kubernetes API request object sent to a webhook during admission, containing the incoming object and later the allowed/denied decision with an optional patch. Kyverno receives and answers these when acting as a validating or mutating webhook.

Related: ValidatingWebhookConfiguration, MutatingWebhookConfiguration
ValidatingAdmissionPolicy

A Kubernetes-native policy resource evaluated by the API server using CEL expressions, separate from Kyverno. Kyverno can generate these or coexist with them, so candidates should know how they differ from Kyverno ClusterPolicies.

Related: ClusterPolicy, AdmissionReview
ClusterPolicy

A cluster-scoped Kyverno resource that defines one or more rules to validate, mutate, generate, or verify resources. It applies across namespaces unless rule-level selectors or namespace filters narrow its scope.

Related: Policy, Rule, match block
Policy

A namespaced Kyverno resource holding the same rule types as a ClusterPolicy but scoped to its own namespace by default. Useful for delegating policy ownership to namespace tenants.

Related: ClusterPolicy, Rule, PolicyException
Rule

The core unit inside a Kyverno policy that pairs match and exclude conditions with an action such as validate, mutate, generate, or verifyImages. Each rule is evaluated independently and can carry its own configuration.

Related: match block, exclude block, validate rule
match block

The required section of a rule declaring which resources, kinds, namespaces, operations, or subjects trigger evaluation. If a resource does not satisfy the match block, the rule is skipped entirely.

Related: exclude block, Rule, any/all block
exclude block

An optional rule section that removes resources from an otherwise matching set. Exclusions are evaluated before rule logic, so excluded resources never reach validation, mutation, or generation.

Related: match block, Rule, any/all block
any/all block

Boolean structure used inside match and exclude to combine conditions. any means at least one entry must match; all means every entry must match. Nesting them allows precise targeting of resources.

Related: match block, exclude block
validate rule

A rule type that checks whether a resource complies with a condition and denies it when it fails. It can also audit without blocking by setting validationFailureAction to Audit.

Related: validationFailureAction, deny, pattern
mutate rule

A rule type that changes a resource during admission, either by strategic merge patch, JSON patch, or patchesJson6902. Mutation can add defaults, labels, or enforce settings before the object is persisted.

Related: patchStrategicMerge, patchesJson6902, mutateExisting
generate rule

A rule type that creates additional resources, such as ConfigMaps or NetworkPolicies, when a triggering resource appears. Generation can be triggered by a resource or by an existing resource's state.

Related: sync, mutateExisting, Rule
verifyImages rule

A rule type that checks container image signatures and attestations against configured keys or keyless identities before allowing a Pod. It supports cosign signatures and in-toto attestations.

Related: attestation, imageRegistry, Rule
validationFailureAction

Policy or rule setting that decides whether a failed validation denies the request or merely records a policy report. Values are Enforce and Audit; the default historically was Audit, so check your version.

Related: validate rule, PolicyReport, deny
pattern

A validation expression using wildcards, anchors, and conditional operators to describe acceptable field values. Patterns support negation with ! and any-value wildcards, making them concise for structural checks.

Related: validate rule, deny, JMESPath
deny

A validation condition that explicitly rejects a resource with a custom message when its expression evaluates true. It is often easier to read than an inverted pattern for complex business rules.

Related: validate rule, pattern, precondition
precondition

A rule-level expression evaluated before the main rule logic, using JMESPath or CEL. If any precondition is false, the rule is skipped, which is useful for narrowing expensive checks.

Related: JMESPath, CEL, Rule
JMESPath

A query language for JSON used in Kyverno variables, preconditions, and deny conditions. It supports projections, filters, functions, and pipe expressions to extract values from admission requests.

Related: precondition, context, CEL
CEL

Common Expression Language, an expression syntax Kyverno supports for validation and preconditions in newer versions. It offers typed, efficient evaluation and is also used by Kubernetes ValidatingAdmissionPolicy.

Related: JMESPath, precondition, ValidatingAdmissionPolicy
context

A rule section that loads external data, such as ConfigMaps, API calls, or image registry data, into variables before evaluation. Context entries make decisions depend on cluster or remote state.

Related: JMESPath, variable, imageRegistry
variable

A named value referenced with double curly braces in policy fields, resolved from the admission request, context entries, or built-in request data. Variables are substituted before rule evaluation.

Related: context, JMESPath, request object
request object

The built-in data available to policies, including the resource, userInfo, operation, and namespace. Policies reference it to make decisions based on who is acting and what they are doing.

Related: variable, AdmissionReview, precondition
patchStrategicMerge

A mutation method that overlays a partial YAML document onto the resource, merging maps and lists according to strategic merge semantics. It is the most common way to add labels or defaults.

Related: mutate rule, patchesJson6902, mutateExisting
patchesJson6902

A mutation method that applies explicit JSON Patch operations such as add, remove, or replace at given paths. It gives precise control when merge behavior is insufficient.

Related: patchStrategicMerge, mutate rule
mutateExisting

A mutation mode that updates pre-existing resources rather than the incoming request, used with generate or mutate rules targeting other objects. It is often used for repairing drifted resources.

Related: mutate rule, generate rule, sync
sync

A generate-rule option that keeps generated resources aligned with their source, recreating or updating them when the trigger changes. Without sync, generated objects can drift or be deleted permanently.

Related: generate rule, mutateExisting
PolicyException

A namespaced resource that exempts specific resources from named policies and rules, with optional conditions. It provides an auditable alternative to editing policy match blocks for one-off exceptions.

Related: Policy, ClusterPolicy, match block
PolicyReport

A namespaced custom resource summarizing pass, fail, warn, and error results per policy and resource. Reports are produced from audit or background scans and support compliance dashboards.

Related: ClusterPolicyReport, background scan, validationFailureAction
ClusterPolicyReport

The cluster-scoped counterpart of PolicyReport, aggregating results for cluster-scoped resources and cluster-wide policy evaluation. Tools such as the policy-reporter UI consume both report types.

Related: PolicyReport, background scan
background scan

Periodic reevaluation of existing resources against policies without an admission request. Background scans populate reports and can trigger generation or mutation of existing objects.

Related: PolicyReport, mutateExisting, generate rule
Kyverno CLI

The kyverno command-line tool for testing and applying policies outside a cluster. It validates policy syntax, applies policies to YAML manifests, and runs test suites in CI.

Related: kyverno apply, kyverno test, kyverno jp
kyverno apply

CLI subcommand that evaluates policies against local resource manifests and prints results, optionally writing mutated output. It is the fastest way to debug a rule before deploying it.

Related: Kyverno CLI, kyverno test
kyverno test

CLI subcommand that runs declarative test files describing resources and expected pass or fail outcomes. It enables regression testing of policies in pipelines.

Related: Kyverno CLI, kyverno apply
kyverno jp

CLI subcommand that evaluates JMESPath expressions against a JSON document. It helps authors build and verify the queries used in preconditions and variables.

Related: JMESPath, Kyverno CLI
Helm chart installation

The recommended way to install Kyverno, deploying controllers, webhooks, RBAC, and CRDs with configurable values. Version pinning and values overrides control replica counts and feature flags.

Related: webhook configuration, upgrade
ValidatingWebhookConfiguration

The Kubernetes object registering Kyverno's admission endpoint so the API server calls it for matching resources. Its failurePolicy and namespace selectors directly affect cluster safety.

Related: MutatingWebhookConfiguration, AdmissionReview, failurePolicy
failurePolicy

Webhook setting that decides whether admission proceeds when Kyverno is unreachable. Fail means requests are rejected; Ignore means they proceed, which trades safety for availability.

Related: ValidatingWebhookConfiguration, webhook configuration
upgrade

The process of moving Kyverno to a newer release, typically via Helm with CRD updates and attention to webhook and API version changes. Skipping major versions can require intermediate steps.

Related: Helm chart installation, CRD
CRD

CustomResourceDefinition extending the Kubernetes API with Kyverno types such as ClusterPolicy and PolicyException. CRDs must be installed and upgraded alongside the controller for policies to work.

Related: ClusterPolicy, PolicyException, upgrade
policy validation

The admission check Kyverno performs on its own policy resources to reject malformed rules, bad selectors, or invalid variables. It catches errors before a broken policy reaches the cluster.

Related: ClusterPolicy, Kyverno CLI
cleanup policy

A Kyverno feature that deletes matching resources on a schedule or after a time-to-live, expressed as a policy rule. It helps control accumulation of ephemeral objects such as Jobs or test namespaces.

Related: Rule, generate rule