使用客户管理的加密密钥 (CMEK)

本页面介绍了如何创建使用客户管理的加密密钥 (CMEK) 的 Memorystore for Valkey 实例。本文档还提供了有关管理使用 CMEK 的实例的说明。如需详细了解 Memorystore for Valkey 的 CMEK,请参阅客户管理的加密密钥 (CMEK) 简介

准备工作

  1. 确保您的用户账号具有 Memorystore Admin 角色

    转到 IAM 页面

创建使用 CMEK 的实例的工作流

  1. 在您希望 Memorystore for Valkey 实例所在的地理位置创建密钥环密钥

  2. 复制或记下密钥名称 (KEY_NAME)、密钥的位置和密钥环的名称 (KEY_RING)。您在向服务账号授予密钥访问权限时需要此信息。

  3. 向 Memorystore for Valkey 服务账号授予密钥访问权限

  4. 前往相应项目,然后在密钥环和密钥所在的同一区域中创建启用了 CMEK 的 Memorystore for Valkey 实例

您的 Memorystore for Valkey 实例现已通过 CMEK 启用。

创建密钥环和密钥

创建密钥环密钥。 两者都必须与您的 Memorystore for Valkey 实例位于同一区域。密钥可以来自其他项目,但必须位于同一区域。此外,密钥必须使用对称加密算法

创建密钥环和密钥后,复制或记下 KEY_NAME、密钥位置和 KEY_RING。在向服务账号授予密钥访问权限时,您需要此信息。

向 Memorystore for Valkey 服务账号授予密钥的访问权限

您必须先授予特定的 Memorystore for Valkey 服务账号对 CMEK 的访问权限,然后才能创建使用 CMEK 的 Memorystore for Valkey 实例。

如需向服务账号授予访问权限,请使用以下格式:

service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com

gcloud

如需向服务账号授予对密钥的访问权限,请使用 gcloud kms keys add-iam-policy-binding 命令。将 VARIABLES 替换为适当的值。

gcloud kms keys add-iam-policy-binding  \
projects/PROJECT_ID/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

创建使用 CMEK 的 Memorystore for Valkey 实例

gcloud

如需创建使用 CMEK 的实例,请使用 gcloud memorystore instances create 命令。将 VARIABLES 替换为适当的值。

gcloud memorystore instances create INSTANCE_ID \
--project=PROJECT_NAME \
--location=REGION_ID \
--endpoints='[{"connections": [{"pscAutoConnection": {"network": "projects/PROJECT_NAME/global/networks/NETWORK_ID", "projectId": "PROJECT_NAME"}}]}]' \
--kms-key=projects/PROJECT_NAME/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--shard-count=SHARD_NUMBER \
--persistence-config-mode=PERSISTENCE_CONFIG_MODE

查看启用了 CMEK 的实例的密钥信息

请按照以下说明查看您的实例是否已启用 CMEK,并查看有效密钥。

gcloud

如需验证 CMEK 是否已启用并查看密钥引用,请使用 gcloud memorystore instances describe 命令查看 encryptionInfokmsKey 字段。将 VARIABLES 替换为适当的值。

gcloud memorystore instances describe INSTANCE_ID \
--project=PROJECT_NAME \
--location=REGION_ID

管理密钥版本

如需了解停用、销毁、轮替、启用和恢复密钥版本时会发生什么情况,请参阅 CMEK 密钥版本的行为

如需了解如何停用和重新启用密钥版本,请参阅启用和停用密钥版本

如需查看有关如何销毁和恢复密钥版本的说明,请参阅销毁和恢复密钥版本

后续步骤