如何解决使用客户拥有的密钥加密 kubernetes pvc 存储
我使用 GCP(或 AWS)的计算/网络创建并运行自己的 Kubernetes 集群。没有 GKE,AKS。
我需要使用客户自己的密钥对动态配置的 PV 进行加密。
客户需求意味着,我们构建自己的 KMS 并将其用于客户密钥。 GCP(或 AWS)自己的 KMS 是没有问题的。
如何解决这个问题?
例如 GCP -
当我使用 GCP 的 CSI 驱动程序 (pd.csi.storage.gke.io) 时,它似乎只允许 GCP KMS。我需要使用自己的。
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: custcmk-gcpcsi-sc
provisioner: pd.csi.storage.gke.io
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
parameters:
type: pd-standard
disk-encryption-kms-key: projects/key-project-id/locations/location/keyRings/key-ring/cryptoKeys/key
当然,在上面的例子中,key是在存储类中指定的。在实际使用中,我必须为每个存储配置使用不同的客户密钥。
是否可以在 PVC 中指定密钥?
基本上,我们的集群分布在云提供商 GCP、Azure、AWS...上,因此我们可以使用的平台特定资源的最大范围是计算/网络。
有没有人成功处理过类似的情况?
解决方法
是否可以在 PVC 中指定密钥?
很遗憾,无法在 PVC level 上执行此操作。
作为一种解决方法,您可以使用 Customer-managed encryption keys,但您必须使用 GCP KMS 而不是您自己构建的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。