Our great sponsors
-
If built-in solution is not enough for you, you have to choose an external Key Management Service (KMS) like Hashicorp Vault and somehow inject secret resolution to your workload. There are several options, you can use a mutation webhook and create environment variables during pod creation for example, or use an extra sidecar to resolve secrets inside the container as volumes. The main advantages of this way is you have full control where and how encrypted secrets would be converted into readable values, but all the coin has an other side. The solutions are complex, and most importantly they are not transparent. Because Kubernetes secrets are just references to the real ones, you must configure everything on every single target cluster, or have to write tons of if-else in your favorite manifest generation tool.
Related posts
- SSH Keys Hosting
- What are secure methods of storing log in credentials when programs and scripts need to access other computers or databases?
- Should I put sensitive information inside a .env file? Can I just delete it after the server is online?
- My first attempt at using HashiCorp Vault (inc. C# Client Library)
- How do you manage sensitive keys when using foreign developers?