More Info:
Where etcd encryption is used, appropriate providers should be configured.Risk Level
MediumAddress
SecurityCompliance Standards
- CIS Kubernetes
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
Identify the current encryption provider config file (if any)
Run on every control plane node:If present, note the path after--encryption-provider-config=(for example/etc/kubernetes/encryption-config.yaml). If not present, you will add this flag in a later step. -
Create or edit the EncryptionConfig file with a strong provider
Run on every control plane node. Adjust the path if you already have a config file; otherwise use the example path below:Put content similar to this, ensuring the first provider underresources.providersis one ofaescbc,kms, orsecretbox(example usesaescbc):Generate a 32‑byte key and base64-encode it (run once, then paste the output in place ofREPLACE_WITH_BASE64_ENCODED_32_BYTE_KEY): -
Ensure kube-apiserver uses the EncryptionConfig file
Run on every control plane node and edit the static pod manifest:In thecommand:orargs:list, ensure there is an entry like:Save the file. Because this is a static pod manifest under/etc/kubernetes/manifests, the kubelet will automatically restart the API server; expect a brief control-plane interruption. -
Optionally re-encrypt existing resources with the new provider
Run on any machine with kubectl access (with cluster-admin privileges). This is an operational decision; coordinate during a maintenance window for large clusters.This forces secrets to be rewritten and stored using the configured encryption provider. -
Verify the effective encryption provider
Run on every control plane node (after kube-apiserver has restarted):Confirm the printedprovider=line showsaescbc,kms, orsecretboxas the first provider.
Using kubectl
Using kubectl
kubectl cannot modify the kube-apiserver static pod manifest or its
--encryption-provider-config setting; those are host-level files under /etc/kubernetes/manifests on every control plane node. To address this finding, follow the guidance in the Manual Steps section and apply the changes directly on the control plane nodes.Automation
Automation

