保护Kubernetes秘密文件以进行源代码管理?

dcg*_*oss 1 security deployment encryption base64 kubernetes

根据Kubernetes secrets docs,创建一个秘密就像base64编码数据并将其放在一个文件中一样简单.

那么,如果base64可以像编码一样轻松解码,我们可以保护/加密文件中的秘密值吗?能够将秘密文件提交到源代码控制中会很好,但是简单地使用base64编码的数据提交文件绝不是安全的.

例如,以下是文档中给出的示例:

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  password: dmFsdWUtMg0K
  username: dmFsdWUtMQ0K
Run Code Online (Sandbox Code Playgroud)

如果你去了base64decode.org,你会发现那些密码/用户名值只是"value-2".此文件不适合源代码管理.我们如何保护文件中的数据,以便对源代码控制安全?或者这被认为是不好的做法,我们应该将文件添加到.gitignore?

Jor*_*itt 6

它不是base64编码的安全性,它允许二进制内容存储在秘密中.您可能不应该将秘密定义提交给源代码控制.