Criar chaves de criptografia com o Cloud KMS

Neste guia de início rápido, mostramos como criar e usar chaves de criptografia com o Cloud Key Management Service em um projeto seu. Estas instruções usam o console do Google Cloud para criar keyrings, chaves e versões de chave no Cloud KMS. Para instruções sobre outros métodos, consulte os Guias de instruções.

Neste guia de início rápido, a linha de comando é usada para enviar solicitações à API Cloud KMS. Para exemplos de programação que usam as bibliotecas de cliente para enviar solicitações à API Cloud KMS, consulte Como criptografar e descriptografar.

Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Ative a API Cloud KMS.

    Ative a API

  5. Instale a CLI do Google Cloud.
  6. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  7. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  8. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  9. Ative a API Cloud KMS.

    Ative a API

  10. Instale a CLI do Google Cloud.
  11. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init

Keyrings e chaves

Para criptografar e descriptografar o conteúdo, você precisa de uma chave do Cloud KMS, que faz parte de um keyring.

Crie um keyring com o nome test e uma chave com o nome quickstart. Consulte a visão geral da hierarquia de objetos para saber mais sobre esses objetos e como eles se relacionam.

gcloud kms keyrings create "test" \
    --location "global"
gcloud kms keys create "quickstart" \
    --location "global" \
    --keyring "test" \
    --purpose "encryption"

Use a opção list para ver o nome e os metadados da chave que acabou de criar.

gcloud kms keys list \
    --location "global" \
    --keyring "test"

Você verá:

NAME                                                                      PURPOSE          PRIMARY_STATE
projects/project-id/locations/global/keyRings/test/cryptoKeys/quickstart  ENCRYPT_DECRYPT  ENABLED

Criptografar dados

Agora que você tem uma chave, basta usá-la para criptografar um texto ou conteúdo binário.

Armazene algum texto a ser criptografado em um arquivo chamado "mysecret.txt".

echo -n "Some text to be encrypted" > mysecret.txt

Para criptografar os dados com gcloud kms encrypt, forneça as informações da chave, especifique o nome do arquivo de texto simples a ser criptografado e o nome do arquivo que conterá o conteúdo criptografado:

gcloud kms encrypt \
    --location "global" \
    --keyring "test" \
    --key "quickstart" \
    --plaintext-file ./mysecret.txt \
    --ciphertext-file ./mysecret.txt.encrypted

O método encrypt salva o conteúdo criptografado no arquivo especificado pela sinalização --ciphertext-file.

Descriptografar texto

Para descriptografar os dados com gcloud kms decrypt, forneça as informações da chave, especifique o nome do arquivo a ser descriptografado e especifique o nome do arquivo com o conteúdo descriptografado:

gcloud kms decrypt \
    --location "global" \
    --keyring "test" \
    --key "quickstart" \
    --ciphertext-file ./mysecret.txt.encrypted \
    --plaintext-file ./mysecret.txt.decrypted

O método decrypt salva o conteúdo descriptografado no arquivo especificado pela sinalização --plaintext-file.

Para fazer isso, use a mesma chave com que o conteúdo foi criptografado.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

Liste as versões disponíveis para sua chave:

gcloud kms keys versions list \
    --location "global" \
    --keyring "test" \
    --key "quickstart"

Para excluir uma versão, execute o seguinte comando, substituindo key-version pelo número da versão de chave a ser excluída:

gcloud kms keys versions destroy key-version \
    --location "global" \
    --keyring "test" \
    --key "quickstart"

A seguir