Esta página mostra como criar uma chave no Cloud KMS. Uma chave pode ser uma chave de encriptação simétrica ou assimétrica, uma chave de assinatura assimétrica ou uma chave de assinatura MAC.
Quando cria uma chave, adiciona-a a um conjunto de chaves numa localização do Cloud KMS específica. Pode criar um novo conjunto de chaves ou usar um existente. Nesta página, gera uma nova chave do Cloud KMS ou do Cloud HSM e adiciona-a a um conjunto de chaves existente. Para criar uma chave do Cloud EKM, consulte o artigo Crie uma chave externa. Para importar uma chave do Cloud KMS ou do Cloud HSM, consulte o artigo Importe uma chave.
Antes de começar
Antes de concluir as tarefas nesta página, precisa do seguinte:
- Um recurso de projeto para conter os seus recursos do Cloud KMS. Google Cloud Recomendamos que use um projeto separado para os seus recursos do Cloud KMS que não contenha outros recursos. Google Cloud
- O nome e a localização do conjunto de chaves onde quer criar a sua chave. Escolha um porta-chaves numa localização próxima dos seus outros recursos e que suporte o nível de proteção escolhido. Para ver as localizações disponíveis e os níveis de proteção que suportam, consulte Localizações do Cloud KMS. Para criar um conjunto de chaves, consulte o artigo Crie um conjunto de chaves.
- Opcional: para usar a CLI gcloud, prepare o seu ambiente.
In the Google Cloud console, activate Cloud Shell.
Funções necessárias
Para receber as autorizações necessárias para criar chaves, peça ao seu administrador para lhe conceder as seguintes funções de IAM no projeto ou num recurso principal:
-
Administrador do Cloud KMS (
roles/cloudkms.admin) -
Para criar chaves HSM de inquilino único:
Criador de chaves HSM de inquilino único do Cloud KMS (
roles/cloudkms.hsmSingleTenantKeyCreator)
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Estas funções predefinidas contêm as autorizações necessárias para criar chaves. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para criar chaves:
-
cloudkms.cryptoKeys.create -
cloudkms.cryptoKeys.get -
cloudkms.cryptoKeys.list -
cloudkms.cryptoKeyVersions.create -
cloudkms.cryptoKeyVersions.get -
cloudkms.cryptoKeyVersions.list -
cloudkms.keyRings.get -
cloudkms.keyRings.list -
cloudkms.locations.get -
cloudkms.locations.list -
resourcemanager.projects.get -
Para obter uma chave pública:
cloudkms.cryptoKeyVersions.viewPublicKey -
Para criar chaves de HSM de inquilino único:
-
cloudkms.singleTenantHsmInstances.get -
cloudkms.singleTenantHsmInstances.use
-
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Crie uma chave de encriptação simétrica
Consola
Na Google Cloud consola, aceda à página Gestão de chaves.
Clique no nome do conjunto de chaves para o qual vai criar uma chave.
Clique em Criar chave.
Em Nome da chave, introduza um nome para a chave.
Para o Nível de proteção, selecione Software, HSM ou HSM de inquilino único.
Se selecionou HSM de inquilino único, selecione a instância do HSM de inquilino único onde quer criar a chave.
Para Material da chave, selecione Chave gerada.
Em Finalidade, selecione Encriptar/desencriptar simetricamente.
Aceite os valores predefinidos para Período de rotação e Início a.
Clique em Criar.
gcloud
Para usar o Cloud KMS na linha de comandos, primeiro instale ou atualize para a versão mais recente da CLI do Google Cloud.
Para criar uma chave de software ou do Cloud HSM multiinquilino, use o comando
kms keys create:gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --protection-level "PROTECTION_LEVEL"Substitua o seguinte:
KEY_NAME: o nome da chave.KEY_RING: o nome do conjunto de chaves que contém a chave.LOCATION: a localização do Cloud KMS do conjunto de chaves.PROTECTION_LEVEL: o nível de proteção a usar para a chave, por exemplo,softwareouhsm. Pode omitir a flag--protection-levelpara chavessoftware.
Para ver informações sobre todas as flags e valores possíveis, execute o comando com a flag
Para criar uma chave do HSM na nuvem de inquilino único, adicione a flag--help.--crypto-key-backendao comandokms keys create:gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --protection-level "hsm-single-tenant" \ --crypto-key-backend="projects/INSTANCE_PROJECT/locations/LOCATION/singleTenantHsmInstances/INSTANCE_NAME"Substitua o seguinte:
INSTANCE_PROJECT: o identificador do projeto onde a sua instância do Cloud HSM de inquilino único existe.INSTANCE_NAME: o nome da instância do HSM na nuvem de inquilino único onde quer criar a chave. Para mais informações sobre instâncias do Cloud HSM de inquilino único, consulte o artigo Crie e faça a gestão de uma instância do Cloud HSM de inquilino único.
Para ver informações sobre todas as flags e valores possíveis, execute o comando com a flag
--help.C#
Para executar este código, primeiro configure um ambiente de desenvolvimento C# e instale o SDK C# do Cloud KMS.
Go
Para executar este código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK Go do Cloud KMS.
Java
Para executar este código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK Java do Cloud KMS.
-
Administrador do Cloud KMS (