GKE Secrets 或 Google 机密管理器

Posted

技术标签:

【中文标题】GKE Secrets 或 Google 机密管理器【英文标题】:GKE Secrets OR Google Secret manager 【发布时间】:2021-03-05 13:35:55 【问题描述】:

有谁知道在哪种情况下选择 Kubernetes 机密而不是谷歌机密管理器,反之亦然?两者的区别?

【问题讨论】:

【参考方案1】:

通过 Kubernetes Secret(K8S Secret),您可以使用 K8S 的内置功能。您将您的秘密加载到配置映射中,然后将它们安装在需要它们的 pod 上。

专业版

如果您想在 AWS、Azure 或本地部署,仍然在 K8S 上,行为将是相同的,无需在您的代码中执行更新。

缺点

这些秘密只能由 K8S 集群访问,无法与其他 GCP 服务重用它们

注意:使用 GKE,ETCD 组件会自动使用 KMS 服务的密钥加密,以保持静态加密的秘密。但是,每个 K8S 安装并不总是相同的,尤其是在前提条件下,秘密以纯文本形式保存。请注意这部分安全性。


Secret Manager 是由 Google 管理的保险库。您有 API 来读取和写入它们,并且 IAM 服务会检查授权。

专业版

这是一项 Google Cloud 服务,只要您获得授权,您就可以从任何 GCP 服务(Compute Engine、Cloud Run、App Engine、Cloud Functions、GKE 等)访问它

缺点

这是 Google Cloud 的特定产品,您已被锁定。

【讨论】:

以上是关于GKE Secrets 或 Google 机密管理器的主要内容,如果未能解决你的问题,请参考以下文章

使用 Azure DevOps 构建管道将机密传递给容器时,Docker BuildKit 返回“/run/secrets/<secret-id>:没有这样的文件或目录”

在.NET Core console application中使用User Secrets(用户机密)

如何在 aws Secrets Manager 服务中管理 aws RDS(由 cloudformation 创建)的主用户凭证?

使用 AWS cli 从 AWS 机密管理器解析机密

外部机密无法从私有集群访问 AWS STS

在 Google Apps 脚本中管理 API 机密的适当方法是啥?