GKE中PV加密是否直接使用存储类指定的Cloud KMS密钥?
GKE 动态供应PV的Cloud KMS加密逻辑说明
GKE 配合 Cloud KMS 客户管理密钥加密动态供应的持久卷时,使用的是信封加密机制,不会直接用你在存储类中指定的 KMS 密钥加密实际数据,具体逻辑如下:
- 你在 StorageClass 中指定的 Cloud KMS 密钥是密钥加密密钥(KEK),该密钥全程不会离开 Cloud KMS 的可信安全边界,仅用于加密保护数据密钥。
- 每次基于该存储类动态创建 PV 时,Google Cloud 会为每个 PV 单独生成唯一的数据加密密钥(DEK),PV 内的所有实际数据都会直接用该 DEK 加密。
- 生成的明文 DEK 仅会在 PV 挂载/访问时临时存放在节点内存中,不会做持久化存储;持久化保存的是经 KMS KEK 加密后的密文 DEK,和 PV 对应的 GCE 持久磁盘资源绑定存储。
- 不同 PV 对应的 DEK 完全独立,哪怕是基于同一个存储类创建的多个 PVC 对应的 PV,也会使用不同的 DEK 加密。
你可以在 Google Cloud 控制台查看对应 GCE 持久磁盘的加密配置,即可确认关联的 KMS 密钥为 KEK 角色。
内容的提问来源于stack exchange,提问作者C. Derx
相关产品推荐
相关产品推荐

