本页面介绍了如何创建使用客户管理的加密密钥的 Memorystore for Redis 实例。以及如何管理使用 CMEK 的实例。如需详细了解 Memorystore 的客户管理的加密密钥,请参阅客户管理的加密密钥。
准备工作
用于创建使用 CMEK 的实例实例的工作流
复制或记下密钥 ID (KMS_KEY_ID)、密钥位置和密钥环的 ID (KMS_KEYRING_ID)。您在向服务帐号授予密钥访问权限时需要此信息。
转到某个项目,然后在密钥环和密钥所在的区域中创建启用了 CMEK 的 Memorystore for Redis 实例。
您的 Memorystore for Redis 实例现已使用 CMEK 启用。
创建密钥和密钥环
按照说明创建密钥环和创建密钥。两者都必须与 Redis 实例位于同一区域。密钥可以来自不同的项目,只要该密钥位于同一区域即可。此外,密钥必须使用对称加密算法。
向服务帐号授予访问密钥的权限
为了先创建使用 CMEK 的 Redis 实例,您必须向特定的 Memorystore 服务帐号授予对该密钥的访问权限。授予对使用以下格式的 Memorystore 服务帐号的访问权限:
service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com
控制台
使用控制台时,您需要在创建使用 CMEK 的 Redis 实例的步骤中向服务帐号授予对密钥的访问权限。
gcloud
如需授予服务帐号访问密钥的权限,请运行以下命令,将 VARIABLES 替换为适当的值:
gcloud kms keys add-iam-policy-binding [KMS_KEY_ID] \ --location=[REGION_ID] \ --keyring=[KMS_KEYRING_ID] \ --member=serviceAccount:service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
创建使用 CMEK 的 Memorystore for Redis 实例
如需创建具有 CMEK 的实例,请按如下所述操作:
控制台
首先,在您要创建 Memorystore 实例的同一区域中具有密钥环和密钥。
按照创建 Redis 实例中的说明操作,直至达到启用客户管理的加密密钥的步骤,然后返回到这些说明。
选择使用客户管理的加密密钥 (CMEK)。
使用下拉菜单选择您的密钥。
如果 Memorystore 服务帐号尚未获得所需的权限,则系统会显示一个文本框:
The service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com service account does not have the "cloudkms.cryptoKeyEncrypterDecrypter" role. Verify the service account has permission to encrypt/decrypt with the selected key.
- 点击授予按钮,以向 Memorystore 服务帐号授予角色权限。
完成对实例所需的配置,然后点击创建按钮以创建启用了 CMEK 的 Memorystore for Redis 实例。
gcloud
如需创建使用客户管理的加密密钥的实例,请输入以下命令,将 VARIABLES 替换为适当的值:
gcloud beta redis instances create [INSTANCE_ID] --size=[SIZE] \ --region=[REGION_ID] \ --customer-managed-key=projects/[PROJECT_NAME]/locations/[REGION_ID]/keyRings/[KEYRING_NAME]/cryptoKeys/[KEY_NAME]
查看启用了 CMEK 的实例的密钥信息
请按照以下说明查看您的实例是否已启用 CMEK,并查看有效的密钥。
控制台
在 Google Cloud Console 中,转到 Memorystore for Redis 实例页面。
点击实例 ID,查看实例的实例详情页面。
点击安全标签页。
使用客户管理的密钥加密部分包含指向有效密钥的链接,并显示密钥参考路径。如果未显示此部分,则表示您的实例未启用 CMEK。
gcloud
如需验证是否已启用 CMEK 并查看密钥引用,请运行以下命令来查看 customerManagedKey
字段:
gcloud beta redis instances describe INSTANCE_ID --project=PROJECT --region=REGION
停用和重新启用密钥版本
如需了解停用、启用、销毁或重新启用密钥版本时发生的情况,请参阅销毁/停用 CMEK 密钥版本的行为。
如需了解如何停用和重新启用密钥版本,请参阅启用和停用密钥版本。
如需了解如何停用和重新启用密钥版本,请参阅销毁和恢复密钥版本。
后续步骤
- 详细了解 Redis AUTH。
- 详细了解传输加密。