aws / aws/eks-anywhere

Secret management in EKS Anywhere

Open
#5,259 3 comments 0 reactions 1 assignee Claimed by @ndeksa View on GitHub
2025Q4 area/cli priority/p1 team/ce
Dominant language
Go
Stars
2.1k
Forks
328
Avg merge
1d 4h
Merged PRs (30d)
9

Description

Currently, EKS Anywhere uses secrets in many places. The Bare metal provider has BMC credentials in the hardware.csv file, vSphere provider has vSphere credentials in the cluster config yaml file, all providers can specify registry credentials in the cluster config yaml file, etc. All of these are stored in clear text. While some of these can be defined via environment variables, not all of them can. And while specifying secrets in environment variables is arguably better than storing them in files neither is an ideal security posture.

Important to note is that once these secrets are consumed by `eksctl anywhere` they are all stored as proper Kubernetes secrets. Again, not the most ideal security posture as Kubernetes secrets are just base64 encoded strings. Kubernetes itself recommends, among other things, to "[Consider using external Secret store providers](https://kubernetes.io/docs/concepts/configuration/secret/)".

This issue is to request new functionality. Allow providing secrets to EKS Anywhere that aren't stored in config files in plain text. To be clear this is not a specific ask to make external secret store providers available per se. This ticket is to capture "what" is wanted, not "how" it is accomplished.

Last important note is that recent potential customers have made it know that Hashicorp Vault is available in their environments and would be ideal for use.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.