使用客戶自行管理的加密金鑰 (CMEK)

本頁面提供建立使用客戶管理加密金鑰的 Memorystore for Redis 執行個體的操作說明。並提供使用 CMEK 的執行個體管理操作說明。如要進一步瞭解 Memorystore 的客戶管理加密金鑰,請參閱「客戶管理的加密金鑰」。

事前準備

  1. 請確認您的使用者帳戶具有 Redis 管理員角色

    前往「身分與存取權管理」頁面

建立使用 CMEK 的執行個體的工作流程

  1. 建立金鑰環,並在您要放置 Memorystore 執行個體的位置建立金鑰

  2. 複製或記下金鑰 ID (KMS_KEY_ID)、金鑰位置,以及金鑰環的 ID (KMS_KEYRING_ID)。您需要這項資訊,才能授予服務帳戶金鑰存取權。

  3. 授予 Memorystore 服務帳戶金鑰存取權

  4. 前往專案,並在金鑰環和金鑰所在的地區建立啟用 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 執行個體

如要使用客戶管理的加密金鑰建立執行個體,請按照下列步驟操作:

控制台

  1. 首先,請在要建立 Memorystore 執行個體的區域中建立金鑰環和金鑰

  2. 請按照「在虛擬私有雲網路中建立 Redis 執行個體」一文中的操作說明操作,直到啟用客戶管理的加密金鑰為止,然後返回本操作說明。

  3. 選取「使用客戶自行管理的加密金鑰 (CMEK)」

  4. 使用下拉式選單選取鍵。

  5. 如果 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 服務帳戶。
  6. 完成為執行個體選取所需設定,然後按一下「Create」按鈕,建立支援 CMEK 的 Memorystore for Redis 執行個體。

gcloud

如要建立使用客戶自行管理加密金鑰的執行個體,請輸入下列指令,並將 VARIABLES 替換為適當的值:

gcloud 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,並查看有效金鑰。

控制台

  1. 在 Google Cloud 控制台中,前往「Memorystore for Redis」執行個體頁面。

    Memorystore for Redis

  2. 按一下執行個體 ID,即可查看執行個體的「Instance details」(執行個體詳細資料) 頁面。

  3. 按一下 [Security] (安全性) 分頁標籤。

  4. 「使用客戶管理的金鑰進行加密」專區包含有效金鑰的連結,並顯示金鑰參照路徑。如果沒有看到這個部分,表示您的執行個體未啟用 CMEK。

gcloud

如要確認是否已啟用 CMEK,並查看金鑰參照資料,請執行下列指令,查看 customerManagedKey 欄位:

gcloud redis instances describe INSTANCE_ID \
--project=PROJECT \
--region=REGION

停用及重新啟用金鑰版本

如要瞭解停用、啟用、刪除或重新啟用金鑰版本時會發生什麼情況,請參閱「銷毀/停用 CMEK 金鑰版本的行為」一文。

如需關於停用及重新啟用金鑰版本的操作說明,請參閱「啟用及停用金鑰版本」。

如要瞭解如何停用及重新啟用金鑰版本,請參閱刪除與還原金鑰版本一文。

後續步驟