Are Your Secrets Encrypted at Rest and in Transit? (Q5)
summary
Kubernetes secrets are only base64-encoded by default so base64 is not encryption and anyone with RBAC or host root can decode them. The etcd datastore stores secret values in plain text unless the API server uses an encryption-config.yaml to enable envelope encryption, shown by gibberish bytes in the etcd file after enabling it. The encryption key lives in the API server config so a compromised host with access to that file still exposes secrets; mitigation options include isolating etcd and using an external vault like HashiCorp Vault and strict RBAC and container escape hardening.
AI-written summary · about
chapters (3)
related talks
29mBase64 is not encryption...
29mHow to Make Kubernetes Secrets Really… Secret?
54mBase64 is not encryption – a better story for Kubernetes Secrets
54mKeeping Kubernetes Secrets
54mKeeping Kubernetes secrets secret
24mUnlocking the Secrets to Effective Secrets Management in GitOps
46mSecuring Secrets in the GitOps era
43mA Confidential Story of Well-Kept Secrets
