Use chaves de encriptação geridas pelo cliente (CMEK)

Esta página fornece instruções para criar uma instância do Memorystore for Redis que usa chaves de encriptação geridas pelo cliente. Também fornece instruções para gerir instâncias que usam CMEK. Para mais informações sobre as chaves de encriptação geridas pelo cliente para o Memorystore, consulte o artigo Chaves de encriptação geridas pelo cliente.

Antes de começar

  1. Certifique-se de que tem a função de administrador do Redis na sua conta de utilizador.

    Aceda à página IAM

Fluxo de trabalho para criar uma instância que usa CMEK

  1. Crie um conjunto de chaves e crie uma chave na localização onde quer que a instância do Memorystore esteja.

  2. Copie ou anote o ID da chave (KMS_KEY_ID), a localização da chave e o ID (KMS_KEYRING_ID) do conjunto de chaves. Precisa destas informações quando concede à conta de serviço acesso à chave.

  3. Conceda à conta de serviço do Memorystore acesso à chave.

  4. Aceda a um projeto e crie uma instância do Memorystore for Redis com a CMEK ativada na mesma região que o conjunto de chaves e a chave.

A sua instância do Memorystore for Redis está agora ativada com a CMEK.

Criar uma chave e um conjunto de chaves

Siga as instruções para criar um conjunto de chaves e criar uma chave. Ambos têm de estar na mesma região que a sua instância do Redis. A chave pode ser de um projeto diferente, desde que esteja na mesma região. Além disso, a chave tem de usar o algoritmo de encriptação simétrica.

Conceder acesso à chave à conta de serviço

Para criar uma instância do Redis que use CMEK, primeiro tem de conceder acesso à chave a uma conta de serviço específica do Memorystore. Conceda acesso à conta de serviço do Memorystore que usa o seguinte formato:

service-[PROJECT-NUMBER]@cloud-redis.iam.gserviceaccount.com

Consola

Quando usa a consola, concede à conta de serviço acesso à chave como parte dos passos para criar uma instância do Redis que usa CMEK.

gcloud

Para conceder à conta de serviço acesso à chave, execute o seguinte comando substituindo VARIABLES por valores adequados:

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

Criar uma instância do Memorystore for Redis que use CMEK

Para criar uma instância com chaves de encriptação geridas pelo cliente:

Consola

  1. Comece por ter um porta-chaves e uma chave na mesma região onde quer criar a sua instância do Memorystore.

  2. Siga as instruções em Criar uma instância do Redis numa rede VPC até chegar ao passo para ativar uma chave de encriptação gerida pelo cliente e, em seguida, regresse a estas instruções.

  3. Selecione Usar uma chave de encriptação gerida pelo cliente (CMEK).

  4. Use o menu pendente para selecionar a chave.

  5. Se não tiver sido concedido à conta de serviço do Memorystore as autorizações necessárias, é apresentada uma caixa de texto com a seguinte mensagem:

    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.

    • Clique no botão Conceder para conceder autorização da função à conta de serviço do Memorystore.
  6. Conclua a seleção das configurações pretendidas para a sua instância e clique no botão Criar para criar a instância do Memorystore para Redis com CMEK ativado.

gcloud

Para criar uma instância que use chaves de encriptação geridas pelo cliente, introduza o seguinte comando, substituindo VARIABLES por valores adequados:

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]

Ver informações essenciais de uma instância com CMEK ativada

Siga estas instruções para ver se as CMEK estão ativadas para a sua instância e para ver a chave ativa.

Consola

  1. Na Google Cloud Console, aceda à página Instâncias do Memorystore para Redis.

    Memorystore para Redis

  2. Clique no ID da instância para ver a página Detalhes da instância da sua instância.

  3. Clique no separador Segurança.

  4. A secção Encriptação com uma chave gerida pelo cliente contém um link para a chave ativa e mostra o caminho de referência da chave. Se esta secção não for apresentada, o CMEK não está ativado para a sua instância.

gcloud

Para verificar se as CMEK estão ativadas e ver a referência da chave, veja o campo customerManagedKey executando o seguinte comando:

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

Desativar e reativar versões de chaves

Para obter informações sobre o que acontece quando desativa, ativa, destrói ou reativa uma versão de chave, consulte o artigo Comportamento da destruição/desativação de uma versão de chave CMEK.

Para ver instruções sobre como desativar e reativar versões de chaves, consulte o artigo Ativar e desativar versões de chaves.

Para ver instruções sobre como desativar e reativar versões de chaves, consulte o artigo Destruir e restaurar versões de chaves.

O que se segue?