What rules can check
Host IPC, privilege escalation, running as root, image registry allowlists, latest or untagged images, digests, resource limits, secrets in environment variables, PVC storage classes and service accounts bound to risky roles.
CONSTELLATION PRODUCT / ADMISSION & SUPPLY CHAIN
A validating admission webhook checks pods and every controller that creates them before they reach the cluster. Default rules reject the most dangerous settings. Profiles, simulation and scan-backed gates let you tighten it from there.
Alpha · Webhook on by default, fails open · Database-backed policies optional01 / DEFAULTS
Out of the box the webhook rejects privileged containers, host networking and the host PID namespace. Two more rules, image signature and read-only root filesystem, run in monitor mode: the pod is admitted and kubectl shows a warning.
The webhook’s failure policy is Ignore by default: if it is down, pods are admitted. It skips its own namespace, but not kube-system; set a namespace selector for system namespaces your platform needs.
02 / RULES & PROFILES
Each rule is in monitor or enforce mode and can be scoped by namespace, namespace label or Constellation group. Profiles bundle rules for a purpose and can be exported and imported.
Host IPC, privilege escalation, running as root, image registry allowlists, latest or untagged images, digests, resource limits, secrets in environment variables, PVC storage classes and service accounts bound to risky roles.
Pod Security Standards baseline and restricted, basic and strict hardening, image provenance, critical and fixable vulnerabilities, secrets and misconfiguration, privileged-workload approval and admission exceptions.
Write rules in OPA Rego or Kubernetes CEL alongside the built-in conditions.
Profiles, custom rules, Rego and CEL reach the live webhook only when admission.policies.enabled is set with the cluster’s ID. It is off by default, so a default install runs the built-in rules. The console’s cluster-wide monitor/protect switch does not yet change the live webhook.
03 / SIMULATE
Paste a manifest, or pick a resource already in the cluster, and see which rules would match and why. Simulation writes no decisions, changes nothing in the cluster and redacts secret values in its response. Dry runs are kept in a history you can review.
Optionally, the webhook writes every enforce denial and monitor match to the hash-chained audit log with the rule, reason, namespace, pod, operation and user. Off by default (admission.audit.enabled).
Admission rules, response rules, groups and network rules have Kubernetes custom resources. They are reconciled only when the operator is given a database connection, which the chart does not do by default.
04 / SCAN-BACKED GATES
Evidence gates read the stored scan for an image before admitting it: vulnerability counts and CVEs, whether a fix exists, how old the scan is, the image digest, secrets and file risks found, and trusted signatures and attestations.
Evidence gates need database-backed policies. Some built-in vulnerability profiles still expect scan provenance the current scanner does not record; test any profile with simulation and monitor mode before enforcing it.
admission:
webhook:
failurePolicy: Ignore # default: fail open
namespaceSelector:
matchExpressions:
- key: kubernetes.io/metadata.name
operator: NotIn
values: [kube-system]
policies:
enabled: true # off by default
clusterId: <cluster-uuid>
audit:
enabled: true # off by default05 / SIGNATURES
The scanner verifies image signatures with cosign on every scan, keyless by default or against your public key, with optional transparency-log checks and required attestation types. Private Sigstore roots of trust, including your own Fulcio, Rekor and TUF, are supported for restricted networks.
Trust policies set which signatures and attestations are required and where. Repository and CI attestations on digest-pinned images have their own trust policies.
No image is trusted until you configure identities and issuers. The built-in signature admission rule is monitor-only; enforce signatures through the image-provenance profile with database-backed policies.


FAQ
No. It is a validating webhook only. It admits, warns or rejects; it never mutates. #
It can. Anything privileged, host-networked or host-PID outside Constellation’s own namespace is rejected by default, including in kube-system. Add a namespace selector for the system namespaces you trust before enforcing. Installs from the Astronomer catalog come with one for Astronomer’s supported tools. #
It is not a substitute for the Kubernetes Pod Security Standards. It includes baseline and restricted profiles modeled on them, alongside rules PSA does not cover, such as scan results and signatures. #
NEXT STEP
Bring a few real workloads. AlphaBravo will walk through what the webhook would do with them.