Directories
¶
| Path | Synopsis |
|---|---|
|
api
|
|
|
v1alpha2
Package v1alpha2 contains the confidential.ai/v1alpha2 CRD types.
|
Package v1alpha2 contains the confidential.ai/v1alpha2 CRD types. |
|
cmd
|
|
|
c8s
command
Command c8s is the operator-side binary for the confidential Kubernetes stack.
|
Command c8s is the operator-side binary for the confidential Kubernetes stack. |
|
get-cert
command
Command get-cert is a thin wrapper around the `c8s get-cert` cobra subcommand for `go build ./cmd/get-cert` users and the historical image entrypoint.
|
Command get-cert is a thin wrapper around the `c8s get-cert` cobra subcommand for `go build ./cmd/get-cert` users and the historical image entrypoint. |
|
nri-image-policy
command
Command nri-image-policy is a thin wrapper around the `c8s nri-image-policy` cobra subcommand.
|
Command nri-image-policy is a thin wrapper around the `c8s nri-image-policy` cobra subcommand. |
|
policy-monitor
command
Command policy-monitor is the thin wrapper around the `c8s policy-monitor` cobra subcommand.
|
Command policy-monitor is the thin wrapper around the `c8s policy-monitor` cobra subcommand. |
|
ratls-mesh
command
Command ratls-mesh is a thin wrapper around the `c8s ratls-mesh` cobra subcommand.
|
Command ratls-mesh is a thin wrapper around the `c8s ratls-mesh` cobra subcommand. |
|
rtmr3-measurer
command
Command rtmr3-measurer is the thin wrapper around the c8s rtmr3-measurer entry point (mirrors cmd/policy-monitor/main.go).
|
Command rtmr3-measurer is the thin wrapper around the c8s rtmr3-measurer entry point (mirrors cmd/policy-monitor/main.go). |
|
volumed
command
Command volumed is the thin wrapper around the `c8s volumed` cobra subcommand, for the copy baked into the kata guest rootfs.
|
Command volumed is the thin wrapper around the `c8s volumed` cobra subcommand, for the copy baked into the kata guest rootfs. |
|
internal
|
|
|
audit
Package audit provides structured audit logging for policy decisions.
|
Package audit provides structured audit logging for policy decisions. |
|
cmds/allowlist
Package allowlist implements the `c8s allowlist` operator CLI for reading and mutating the CDS-served image allowlist that nri-image-policy enforces on every node.
|
Package allowlist implements the `c8s allowlist` operator CLI for reading and mutating the CDS-served image allowlist that nri-image-policy enforces on every node. |
|
cmds/allowlistproxy
Package allowlistproxy implements the loopback proxy used by tls-lb to publish CDS's allowlist API.
|
Package allowlistproxy implements the loopback proxy used by tls-lb to publish CDS's allowlist API. |
|
cmds/attestproxy
Package attestproxy implements the node-local front door to the attestation-api.
|
Package attestproxy implements the node-local front door to the attestation-api. |
|
cmds/cds
Package cds implements the Certificate Distribution Service subcommand: the c8s trust root (attestation, EAR issuance, mesh CA, leaf signing, handoff).
|
Package cds implements the Certificate Distribution Service subcommand: the c8s trust root (attestation, EAR issuance, mesh CA, leaf signing, handoff). |
|
cmds/cdsattest
Package cdsattest implements the tls-lb attestation + over-encryption sidecar: the *dynamic* client-facing endpoints of the c8s-verify protocol.
|
Package cdsattest implements the tls-lb attestation + over-encryption sidecar: the *dynamic* client-facing endpoints of the c8s-verify protocol. |
|
cmds/cdsconn
Package cdsconn builds what an operator CLI needs to reach CDS: an HTTP client that has verified the endpoint's attestation, and the operator credential that signs a write.
|
Package cdsconn builds what an operator CLI needs to reach CDS: an HTTP client that has verified the endpoint's attestation, and the operator credential that signs a write. |
|
cmds/cmdsutil
Package cmdsutil holds tiny helpers shared across the c8s subcommand packages under internal/cmds/.
|
Package cmdsutil holds tiny helpers shared across the c8s subcommand packages under internal/cmds/. |
|
cmds/credrelease
Package credrelease implements the in-guest credential-release service (B4 of the operator-key design).
|
Package credrelease implements the in-guest credential-release service (B4 of the operator-key design). |
|
cmds/getcert
Package getcert implements the get-cert subcommand: it requests a TLS certificate from CDS by proving the caller runs inside a TEE.
|
Package getcert implements the get-cert subcommand: it requests a TLS certificate from CDS by proving the caller runs inside a TEE. |
|
cmds/getkubeconfig
Package getkubeconfig implements the operator-side client (B4 client) that obtains a kube credential from a measured CVM: it attests the node, confirms the full measured identity — on TDX the image tuple (MRTD, RTMR[1], RTMR[2]) plus the RTMR[3] chain seeded by the operator's key and extended by the expected workload images; on SEV-SNP the pinned per-SMP launch digest plus the operator-key HOSTDATA binding — then exchanges a CSR for a short-lived kube client cert over the cred-release endpoint and assembles a kubeconfig.
|
Package getkubeconfig implements the operator-side client (B4 client) that obtains a kube credential from a measured CVM: it attests the node, confirms the full measured identity — on TDX the image tuple (MRTD, RTMR[1], RTMR[2]) plus the RTMR[3] chain seeded by the operator's key and extended by the expected workload images; on SEV-SNP the pinned per-SMP launch digest plus the operator-key HOSTDATA binding — then exchanges a CSR for a short-lived kube client cert over the cred-release endpoint and assembles a kubeconfig. |
|
cmds/getsecret
Package getsecret implements the get-secret subcommand: the sidecar that fetches a workload's secrets from CDS and writes them into the pod.
|
Package getsecret implements the get-secret subcommand: the sidecar that fetches a workload's secrets from CDS and writes them into the pod. |
|
cmds/getvolume
Package getvolume implements the get-volume subcommand: the sidecar that fetches a volume's key blob from CDS and hands it to the node's volumed, which opens the device and mounts it into this pod.
|
Package getvolume implements the get-volume subcommand: the sidecar that fetches a volume's key blob from CDS and hands it to the node's volumed, which opens the device and mounts it into this pod. |
|
cmds/katameasure
Package katameasure implements `c8s kata measure`: the offline predictor for a kata confidential guest's launch measurement, on SEV-SNP and on TDX.
|
Package katameasure implements `c8s kata measure`: the offline predictor for a kata confidential guest's launch measurement, on SEV-SNP and on TDX. |
|
cmds/nri-image-policy
Package nriimagepolicy is an NRI plugin that validates container images against a digest allowlist.
|
Package nriimagepolicy is an NRI plugin that validates container images against a digest allowlist. |
|
cmds/policymonitor
Package policymonitor implements the in-VM container-digest enforcement daemon baked into kata-guest-base.
|
Package policymonitor implements the in-VM container-digest enforcement daemon baked into kata-guest-base. |
|
cmds/probefile
Package probefile implements the probe-file subcommand: a tiny file-existence helper for distroless containers.
|
Package probefile implements the probe-file subcommand: a tiny file-existence helper for distroless containers. |
|
cmds/requesthandoff
Package requesthandoff implements `c8s cds request-handoff`: the client side of the attested mesh-CA handoff (/handoff), runnable standalone as a live-cluster rollout-continuity probe.
|
Package requesthandoff implements `c8s cds request-handoff`: the client side of the attested mesh-CA handoff (/handoff), runnable standalone as a live-cluster rollout-continuity probe. |
|
cmds/rtmr3measurer
Package rtmr3measurer is the in-VM workload measurer: it scans kata-agent's container bundles under /run/kata-containers and extends TDX RTMR[3] with each deployed workload's image digest, binding WHICH container ran into the guest's attestation — dynamically, for any image, with no baked allowlist.
|
Package rtmr3measurer is the in-VM workload measurer: it scans kata-agent's container bundles under /run/kata-containers and extends TDX RTMR[3] with each deployed workload's image digest, binding WHICH container ran into the guest's attestation — dynamically, for any image, with no baked allowlist. |
|
cmds/secrets
Package secrets implements the `c8s secrets` operator CLI for the CDS secret store.
|
Package secrets implements the `c8s secrets` operator CLI for the CDS secret store. |
|
cmds/sidecar
Package sidecar holds the CDS-release plumbing shared by the get-secret and get-volume sidecars: the config they render from the webhook, the mTLS client bound to the pod's leaf, the challenge/sandbox-token dance around each store request, and the retry loop that turns "not released yet" into bounded patience.
|
Package sidecar holds the CDS-release plumbing shared by the get-secret and get-volume sidecars: the config they render from the webhook, the mTLS client bound to the pod's leaf, the challenge/sandbox-token dance around each store request, and the retry loop that turns "not released yet" into bounded patience. |
|
cmds/volume
Package volume implements the `c8s volume` operator CLI: building an encrypted, integrity-protected block image and putting its key into the CDS secret store.
|
Package volume implements the `c8s volume` operator CLI: building an encrypted, integrity-protected block image and putting its key into the CDS secret store. |
|
cmds/volumed
Package volumed implements the node agent that opens encrypted volumes for the pods on it.
|
Package volumed implements the node agent that opens encrypted volumes for the pods on it. |
|
containerd
Package containerd provides tag-to-digest resolution via the containerd image store.
|
Package containerd provides tag-to-digest resolution via the containerd image store. |
|
controller
Package controller hosts the controller-runtime manager, the slim ConfidentialWorkload status-mirror reconciler, and the admission webhook.
|
Package controller hosts the controller-runtime manager, the slim ConfidentialWorkload status-mirror reconciler, and the admission webhook. |
|
crane
Package crane wraps the crane CLI (github.com/google/go-containerregistry): digest resolution, image config, manifest existence, and the error shapes callers key behaviour on.
|
Package crane wraps the crane CLI (github.com/google/go-containerregistry): digest resolution, image config, manifest existence, and the error shapes callers key behaviour on. |
|
crane/cranetest
Package cranetest installs a crane CLI stub on PATH for tests of crane-backed commands, so they run without a registry or the real binary.
|
Package cranetest installs a crane CLI stub on PATH for tests of crane-backed commands, so they run without a registry or the real binary. |
|
fileutil
Package fileutil holds small filesystem helpers shared across c8s commands.
|
Package fileutil holds small filesystem helpers shared across c8s commands. |
|
helmchart
Package helmchart bundles the c8s Helm chart into the Go binary so `c8s install` is a single-file install tool — no side chart download.
|
Package helmchart bundles the c8s Helm chart into the Go binary so `c8s install` is a single-file install tool — no side chart download. |
|
httputil
Package httputil holds small HTTP-handler utilities shared across c8s internal packages.
|
Package httputil holds small HTTP-handler utilities shared across c8s internal packages. |
|
issuer
Package issuer generates CA keypairs and signs workload X.509 certificates in-process.
|
Package issuer generates CA keypairs and signs workload X.509 certificates in-process. |
|
kataspec
Package kataspec reads the parts of kata-agent's on-disk container bundle that c8s makes trust decisions on.
|
Package kataspec reads the parts of kata-agent's on-disk container bundle that c8s makes trust decisions on. |
|
lbdiscovery
Package lbdiscovery consumes the tls-lb front-door discovery contract (types.DiscoveryDocument, served at /v1/discovery, written by get-cert).
|
Package lbdiscovery consumes the tls-lb front-door discovery contract (types.DiscoveryDocument, served at /v1/discovery, written by get-cert). |
|
localverify
Package localverify verifies attestation evidence in-process with attestation-go (the Go port of the attestation-rs engine the cluster runs), auto-detecting the platform from the envelope tag.
|
Package localverify verifies attestation evidence in-process with attestation-go (the Go port of the attestation-rs engine the cluster runs), auto-detecting the platform from the envelope tag. |
|
sandboxledger
Package sandboxledger records which node's admission inventory vouched for a pod sandbox, so a later decision about that sandbox asks the same inventory rather than one the requester names.
|
Package sandboxledger records which node's admission inventory vouched for a pod sandbox, so a later decision about that sandbox asks the same inventory rather than one the requester names. |
|
secrets
Package secrets holds the CDS secret store and the policy that gates access to it.
|
Package secrets holds the CDS secret store and the policy that gates access to it. |
|
testattest
Package testattest serves a fake attestation-api for tests.
|
Package testattest serves a fake attestation-api for tests. |
|
version
Package version exposes the c8s build version.
|
Package version exposes the c8s build version. |
|
webhook
Package webhook contains the mutating admission webhook that injects the c8s get-cert containers into pods opted in by annotation.
|
Package webhook contains the mutating admission webhook that injects the c8s get-cert containers into pods opted in by annotation. |
|
node-guest-image
|
|
|
c8s/systemfloor
command
Command systemfloor regenerates the RKE2 system-image floor in image-policy.yaml.in: the always_allow entries that admit the node's baked system components (rke2 static pods, Cilium, CoreDNS, local-path-storage).
|
Command systemfloor regenerates the RKE2 system-image floor in image-policy.yaml.in: the always_allow entries that admit the node's baked system components (rke2 static pods, Cilium, CoreDNS, local-path-storage). |
|
pkg
|
|
|
allowlist
Package allowlist defines the CDS-served image allowlist and its deterministic canonical serialization.
|
Package allowlist defines the CDS-served image allowlist and its deterministic canonical serialization. |
|
allowlistclient
Package allowlistclient is the HTTP client for the CDS allowlist API.
|
Package allowlistclient is the HTTP client for the CDS allowlist API. |
|
certutil
Package certutil provides common helper functions shared across the ratls project: serial number generation, fingerprinting, PEM encoding, and more.
|
Package certutil provides common helper functions shared across the ratls project: serial number generation, fingerprinting, PEM encoding, and more. |
|
earsigner
Package earsigner manages the EAR token-signing key lifecycle with overlap-based rotation and JWKS serving.
|
Package earsigner manages the EAR token-signing key lifecycle with overlap-based rotation and JWKS serving. |
|
initdata
Package initdata builds and reads the kata init-data document c8s delivers into a confidential guest.
|
Package initdata builds and reads the kata init-data document c8s delivers into a confidential guest. |
|
issuerapi
Package issuerapi defines the wire types for the CDS signing/handoff HTTP API.
|
Package issuerapi defines the wire types for the CDS signing/handoff HTTP API. |
|
jwks
Package jwks wraps go-jose to produce JWK Sets from ECDSA public keys.
|
Package jwks wraps go-jose to produce JWK Sets from ECDSA public keys. |
|
operatorauth
Package operatorauth implements the operator-credential scheme that authorizes c8s allowlist mutations (POST/PUT/DELETE /allowlist).
|
Package operatorauth implements the operator-credential scheme that authorizes c8s allowlist mutations (POST/PUT/DELETE /allowlist). |
|
overenc
Package overenc implements the c8s-verify post-quantum over-encryption channel that terminates inside the Load Balancer's TEE.
|
Package overenc implements the c8s-verify post-quantum over-encryption channel that terminates inside the Load Balancer's TEE. |
|
ratls
Package ratls implements RA-TLS (Remote Attestation TLS) for AMD SEV-SNP and Intel TDX.
|
Package ratls implements RA-TLS (Remote Attestation TLS) for AMD SEV-SNP and Intel TDX. |
|
ratls/cdsclient
Package cdsclient implements certificate provisioning via the CDS attestation-api.
|
Package cdsclient implements certificate provisioning via the CDS attestation-api. |
|
resources
Package resources defines the c8s resource path constants used in the EAR-driven access-control model: a resourceMap maps each attested launch measurement to the list of resources that measurement is authorised for.
|
Package resources defines the c8s resource path constants used in the EAR-driven access-control model: a resourceMap maps each attested launch measurement to the list of resources that measurement is authorised for. |
|
runtimemeasure
Package runtimemeasure pins the c8s conventions for runtime measurement: what a guest extends into its runtime measurement register after launch, and in what order.
|
Package runtimemeasure pins the c8s conventions for runtime measurement: what a guest extends into its runtime measurement register after launch, and in what order. |
|
snpmeasure
Package snpmeasure computes the SEV-SNP launch measurement (launch digest) of a QEMU guest offline, from the firmware and boot artifacts, before the guest is ever started.
|
Package snpmeasure computes the SEV-SNP launch measurement (launch digest) of a QEMU guest offline, from the firmware and boot artifacts, before the guest is ever started. |
|
tdxmeasure
Package tdxmeasure computes the Intel TDX build-time measurement (MRTD) of a kata confidential guest offline, from the TDVF firmware image, before the guest is ever started.
|
Package tdxmeasure computes the Intel TDX build-time measurement (MRTD) of a kata confidential guest offline, from the TDVF firmware image, before the guest is ever started. |
|
workloadclaims
Package workloadclaims implements the admission-inventory API: the component that admitted a pod's containers (nri-image-policy on node-CVM, policy-monitor in a kata guest) is the arbiter of both what runs in a pod sandbox and which sandbox a process belongs to.
|
Package workloadclaims implements the admission-inventory API: the component that admitted a pod's containers (nri-image-policy on node-CVM, policy-monitor in a kata guest) is the arbiter of both what runs in a pod sandbox and which sandbox a process belongs to. |
|
test
|
|
|
integration/cluster/optoken
command
optoken mints the operator Authorization header for a CDS write, using the production signer (pkg/operatorauth).
|
optoken mints the operator Authorization header for a CDS write, using the production signer (pkg/operatorauth). |
Click to show internal directories.
Click to hide internal directories.