Neste tópico, mostramos como importar uma chave criptográfica para o Cloud HSM ou o Cloud Key Management Service como uma nova versão de chave.
Para mais detalhes sobre como importar chaves, incluindo limitações e restrições, consulte Importação de chaves.
Você pode concluir as etapas deste tópico em 5 a 10 minutos, sem incluir as etapas Antes de começar. Encapsular a chave manualmente aumenta a complexidade da tarefa.
Antes de começar
É recomendável criar um novo projeto para testar esse recurso, a fim de facilitar a limpeza após o teste e garantir que você tenha permissões adequadas do Identity and Access Management (IAM) para importar uma chave.
Antes de importar uma chave, você precisa preparar o projeto, o sistema local e a própria chave.
Como preparar o projeto
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the required API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the required API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
O usuário que está executando a importação precisa das seguintes permissões do IAM para criar keyrings, chaves e jobs de importação. Se o usuário não for o proprietário do projeto, atribua ambos os dois papéis predefinidos a seguir:
roles/editor
roles/cloudkms.importer
Para mais informações sobre os papéis e as permissões do IAM disponíveis para o Cloud KMS, consulte Permissões e papéis.
Como preparar o sistema local
Prepare o sistema local escolhendo uma das opções a seguir. O encapsulamento automático de chaves é recomendado para a maioria dos usuários.
- Se você quiser permitir que a Google Cloud CLI faça o encapsulamento das suas chaves automaticamente antes de transmiti-las ao Google Cloud, instale a biblioteca de criptografia Pyca no seu sistema local. A biblioteca Pyca é usada pelo job de importação que une e protege a chave localmente antes de enviá-la ao Google Cloud.
- Se você quiser encapsular suas chaves manualmente, é necessário configurar o OpenSSL para encapsulamento manual de chaves.
Como preparar a chave
Verifique se o algoritmo e o comprimento da chave são compatíveis. Os algoritmos permitidos para uma chave dependem se ela é usada para criptografia simétrica, criptografia assimétrica ou assinatura assimétrica, bem como se a chave está armazenada em software ou em um HSM. Você especifica o algoritmo da chave como parte da solicitação de importação.
Separadamente, você também precisa verificar como a chave está codificada e fazer ajustes, se necessário.
Não é possível alterar o nome de uma versão de chave depois que ela é criada ou importada:
O nível de proteção indica se a chave persiste no software, em um HSM ou em um sistema de gerenciamento de chaves externo. Não é possível mover o material da chave de um desses ambientes de armazenamento para outro. Todas as versões de uma chave têm o mesmo nível de proteção.
A finalidade indica se as versões da chave são usadas para criptografia simétrica, criptografia assimétrica ou assinatura assimétrica. A finalidade da chave limita os possíveis algoritmos que podem ser usados para criar versões dessa chave. Todas as versões de uma chave têm a mesma finalidade.
Se você não tiver uma chave para importar, mas quiser validar o procedimento para importação de chaves, crie uma chave simétrica no sistema local usando o seguinte comando:
openssl rand 32 > ${HOME}/test.bin
Use esta chave somente para teste. Uma chave criada dessa maneira pode não ser apropriada para uso em produção.
Se você precisar encapsular a chave manualmente, faça isso antes de continuar com os procedimentos deste tópico.
Criar a chave e o keyring de segmentação
Uma chave do Cloud KMS é um objeto de contêiner que contém zero ou mais versões de chave. Cada versão de chave contém uma chave criptográfica.
Quando você importa uma chave para o Cloud KMS ou o Cloud HSM, a chave importada se torna uma nova versão de chave em uma chave atual do Cloud KMS ou do Cloud HSM. No restante deste tópico, essa chave é chamada de chave de segmentação. A chave de segmentação já precisa existir para que seja possível importar o material da chave para ela.
Importar uma versão de chave não afeta as versões existentes dessa chave. No entanto, é recomendável criar uma chave vazia ao testar a importação de chaves. Uma chave vazia não tem versão, não está ativa e não pode ser usada.
Como opção, é possível especificar que a chave recém-criada contenha apenas versões importadas, o que impede a geração acidental de novas versões no Cloud KMS.
Uma chave existe em um keyring. Neste tópico, esse keyring é chamado de keyring de segmentação. O local do keyring de segmentação determina o local em que o material da chave estará disponível após a importação. Não é possível criar ou importar chaves do Cloud HSM em alguns locais. Depois que uma chave é criada, ela não pode ser movida para um keyring ou local diferente.
Siga estas etapas para criar uma chave vazia em um novo keyring usando a CLI ou o console do Google Cloud.
Console
No console do Google Cloud, acesse a página Gerenciamento de chaves.
Clique em Criar keyring.
No campo Nome do keyring, digite o nome do seu keyring.
Em Tipo de local, selecione um tipo e um local.
Clique em Criar. A página Criar chave é aberta.
No campo Nome da chave, insira o nome da sua chave.
Em Nível de proteção, selecione Software ou HSM e clique em Continuar.
Em Material da chave, selecione Chave importada e clique em Continuar. Isso impede que uma versão inicial da chave seja criada.
Defina o Propósito e o Algoritmo da chave e clique em Continuar.
Opcional: se você quiser que essa chave contenha apenas versões importadas, selecione Restringir versões de chave apenas à importação. Isso impede que você crie acidentalmente novas versões de chaves no Cloud KMS.
Opcional: para chaves importadas, a rotação automática é desativada por padrão. Para ativar a rotação automática, selecione um valor no campo Período de rotação de chaves.
Se você ativar a rotação automática, as novas versões das chaves serão geradas no Cloud KMS, e a versão importada da chave não será mais a versão padrão da chave após uma rotação.
Clique em Criar.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Crie o keyring de segmentação. Se você pretende importar para uma chave do Cloud HSM, selecione um local compatível com o Cloud HSM.
gcloud kms keyrings create KEY_RING \ --location LOCATION
Saiba mais sobre como criar keyring.
Crie a chave de segmentação.
- Especifique o objetivo da chave.
- Impeça que uma versão inicial seja criada usando a sinalização
--skip-initial-version-creation
. - Opcional: impeça que novas versões sejam criadas no
Cloud KMS usando a flag
--import-only
. - Opcional: não especifique uma política de rotação. Se você ativar a rotação
automática, as novas versões das chaves serão geradas no
Cloud KMS, e a versão importada da chave não será mais
a versão padrão da chave após uma rotação. Não é possível especificar uma
política de rotação se você tiver especificado a sinalização
--import-only
.
gcloud kms keys create KEY_NAME \ --location LOCATION \ --keyring KEY_RING \ --purpose PURPOSE \ --skip-initial-version-creation \ --import-only
Saiba mais sobre como criar chaves do Cloud KMS ou chaves do Cloud HSM.
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK do Cloud KMS para Go.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK do Cloud KMS para Java.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Cloud KMS para Node.js.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK do Cloud KMS para Python.
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
Crie um novo keyring:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings?keyRingId=KEY_RING" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --header "x-goog-user-project: PROJECT_ID" \ --data "{}"
Consulte a documentação da API
KeyRing.create
para mais informações.Crie uma chave vazia e exclusiva para importação:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?cryptoKeyId=KEY_NAME&skipInitialVersionCreation=true&importOnly=true" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --header "x-goog-user-project: PROJECT_ID" \ --data "{"purpose":"PURPOSE", "versionTemplate":{"protectionLevel":"PROTECTION_LEVEL","algorithm":"ALGORITHM"}}"
Consulte a documentação da API
CryptoKey.create
para mais informações.
Agora o keyring e a chave existem, mas a chave não contém material de chave, não tem versão e não está ativa. Em seguida, crie um job de importação.
Criar o job de importação
Um job de importação define as características das chaves importadas, incluindo propriedades que não podem ser alteradas após a importação da chave.
O nível de proteção define se as chaves importadas por esse job de importação vão residir no software, em um HSM ou em um sistema de gerenciamento de chaves externo. O nível de proteção não pode ser alterado depois que a chave for importada.
O método de importação define o algoritmo usado para criar a chave de encapsulamento que protege as chaves importadas durante a transmissão do seu sistema local para o projeto de destino do Google Cloud. É possível escolher uma chave RSA de 3072 bits ou 4096 bits. A menos que você tenha requisitos específicos, é recomendável usar a chave de encapsulamento de 3072 bits.
É possível criar um job de importação usando a CLI gcloud, o console do Google Cloud ou a API Cloud Key Management Service.
Console
Acesse a página Gerenciamento de chaves no console do Google Cloud.
Clique no nome do keyring de destino.
Defina o Nível de proteção como Software ou HSM. Use o mesmo nível de proteção que você definiu para a chave de destino.
Clique em Criar job de importação.
No campo Nome, digite o nome do job de importação.
Na lista suspensa Método de importação, defina o método de importação como RSA de 3072 bits ou RSA de 4096 bits.
Clique em Criar.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Use um comando como o seguinte para criar um job de importação.
gcloud kms import-jobs create IMPORT_JOB \ --location LOCATION \ --keyring KEY_RING \ --import-method IMPORT_METHOD \ --protection-level PROTECTION_LEVEL
- Use o mesmo keyring e local da chave de segmentação.
- Defina o nível de proteção como
software
ouhsm
. - Defina o método de importação como
rsa-oaep-3072-sha1-aes-256
,rsa-oaep-4096-sha1-aes-256
,rsa-oaep-3072-sha256-aes-256
,rsa-oaep-4096-sha256-aes-256
,rsa-oaep-3072-sha256
oursa-oaep-4096-sha256
.
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK do Cloud KMS para Go.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK do Cloud KMS para Java.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Cloud KMS para Node.js.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK do Cloud KMS para Python.
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
Para criar um job de importação, use o método
ImportJobs.create
:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/importJobs?import_job_id=IMPORT_JOB_ID" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"import_method": "IMPORT_METHOD", "protection_level": "PROTECTION_LEVEL"}'
Substitua:
- IMPORT_METHOD: um método de agrupamento de chaves compatível.
- PROTECTION_LEVEL: o nível de proteção das versões de chave importadas por esse job de importação.
Como verificar o estado do job de importação
O estado inicial de um job de importação é PENDING_GENERATION
. Quando o estado é ACTIVE
, você pode usá-lo para importar chaves.
Um job de importação expira após três dias. Se o job de importação tiver expirado, você precisará criar um novo.
É possível verificar o status de um job de importação usando a Google Cloud CLI, o Console do Google Cloud ou a API Cloud Key Management Service.
Console
Acesse a página Gerenciamento de chaves no console do Google Cloud.
Clique no nome do keyring que contém o job de importação.
Clique na guia Jobs de importação na parte superior da página.
O estado ficará visível em Status, ao lado do nome do job de importação.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Quando um job de importação está ativo, você pode usá-lo para importar chaves. Talvez isso leve alguns minutos. Use este comando para verificar se o job de importação está ativo. Use o local e o keyring em que você criou o job de importação.
gcloud kms import-jobs describe IMPORT_JOB \ --location LOCATION \ --keyring KEY_RING \ --format="value(state)"
O resultado será assim:
state: ACTIVE
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK do Cloud KMS para Go.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK do Cloud KMS para Java.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Cloud KMS para Node.js.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK do Cloud KMS para Python.
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
Para verificar o estado de um job de importação, use o método
ImportJobs.get
:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/importJobs/IMPORT_JOB_ID" \ --request "GET" \ --header "authorization: Bearer TOKEN"
Assim que o job de importação estiver ativo, você poderá fazer uma solicitação para importar uma chave.
Como impedir a modificação de jobs de importação
O job de importação determina muitas características da chave importada, incluindo o algoritmo da chave e se uma chave importada é uma chave HSM ou uma chave de software. É possível configurar as permissões do IAM para impedir que os usuários criem jobs de importação e permitir que eles usem jobs de importação para importar chaves.
- Conceda a permissão
importjobs.create
apenas para administradores principais. - Conceda a permissão
importjobs.useToImport
para um job de importação específico ao operador que usará esse job para importar chaves. - Ao criar o job de importação, use-o para especificar o nível de proteção e o algoritmo das versões de chaves importadas.
Até que o job de importação expire, os usuários que têm a permissão importjobs.useToImport
e não têm a permissão importjobs.create
para um determinado job de importação podem importar chaves, mas não podem modificar as características do job de importação.
Importar a chave
Depois de verificar o status do job de importação, você pode fazer uma solicitação de importação.
Use flags diferentes para fazer a solicitação de importação, dependendo se você quer que a Google Cloud CLI encapsule a chave automaticamente ou se você já a encapsulou manualmente.
Independentemente de você encapsular a chave de maneira manual ou automática, é necessário definir o algoritmo como um algoritmo compatível que corresponda ao comprimento da chave real a ser importada e que especifique a finalidade da chave.
As chaves com a finalidade
ENCRYPT_DECRYPT
usam o algoritmogoogle-symmetric-encryption
e têm um comprimento de 32.As chaves com finalidade
ASYMMETRIC_DECRYPT
ouASYMMETRIC_SIGN
são compatíveis com diversos algoritmos e comprimentos.Não é possível alterar a finalidade de uma chave depois que ela é criada. No entanto, as versões de chave subsequentes podem ser criadas com comprimentos diferentes em relação à versão inicial da chave.
Encapsulamento e importação automáticos de uma chave
Se você quiser usar o encapsulamento automático, use a Google Cloud CLI.
Use um comando como o seguinte. Defina --target-key-file
como o local da chave
não encapsulada para encapsular e importar. Não defina --wrapped-key-file
.
Como opção, você pode definir a sinalização --public-key-file
como o local em que já foi feito o download da chave pública. Importar um grande número de chaves impede o download da chave pública durante cada importação. Por exemplo, você pode escrever um script que fez o download da chave pública uma vez e forneceu o local ao importar cada chave.
gcloud kms keys versions import \ --import-job IMPORT_JOB \ --location LOCATION \ --keyring KEY_RING \ --key KEY_NAME \ --algorithm ALGORITHM \ --target-key-file PATH_TO_UNWRAPPED_KEY
A chave é encapsulada pela chave de encapsulamento associada ao job de importação, transmitida ao Google Cloud e importada como uma nova versão de chave na chave de segmentação.
Como importar uma chave com quebra automática manual
Use as instruções nesta seção para importar uma chave que você encapsulou manualmente. Defina --wrapped-key-file
ao local da chave que você encapsulou manualmente.
Não defina --target-key-file
.
Como opção, você pode definir a sinalização --public-key-file
como o local em que já foi feito o download da chave pública. Importar um grande número de chaves impede o download da chave pública durante cada importação. Por exemplo, você pode escrever um script que fez o download da chave pública uma vez e forneceu o local ao importar cada chave.
Console
Abra a página Gerenciamento de chaves no console do Google Cloud.
Clique no nome do keyring que contém o job de importação. A chave de destino é mostrada, juntamente com todas as outras chaves do keyring.
Clique no nome da chave de destino e, em seguida, clique em Importar versão da chave.
Selecione seu job de importação no menu suspenso Selecionar tarefa de importação.
No seletor Fazer upload da chave encapsulada, selecione a chave que você já encapsulou.
Se você estiver importando uma chave assimétrica, selecione o algoritmo no menu suspenso Algoritmo. A página Importar versão da chave será semelhante a:
Clique em Importar.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Use um comando como o seguinte.
gcloud kms keys versions import \ --import-job IMPORT_JOB \ --location LOCATION \ --keyring KEY_RING \ --key KEY_NAME \ --algorithm ALGORITHM \ --wrapped-key-file PATH_TO_WRAPPED_KEY
Para mais informações, consulte a saída do comando gcloud kms keys versions import --help
.
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK do Cloud KMS para Go.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK do Cloud KMS para Java.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Cloud KMS para Node.js.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK do Cloud KMS para Python.
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
Use o método cryptoKeyVersions.import
para
importar uma chave.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions:import" \ --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"importJob": "IMPORT_JOB_ID", "algorithm": "ALGORITHM", "wrappedKey": "WRAPPED_KEY"}'
Substitua:
IMPORT_JOB_ID: o nome completo do recurso do job de importação correspondente.
ALGORITHM: o
algorithm
da chave que está sendo importada, que é do tipoCryptoKeyVersionAlgorithm
.WRAPPED_KEY: a chave encapsulada manualmente no formato base64.
A solicitação de importação de chave é iniciada. Você pode monitorar o status.
Verificar o estado da versão da chave importada
O estado inicial de uma versão de chave importada é PENDING_IMPORT
. Quando o
estado é ENABLED
, a versão da chave foi importada. Se a importação falhar, o status será IMPORT_FAILED
.
É possível verificar o status de uma solicitação de importação usando a Google Cloud CLI, o console do Google Cloud ou a API Cloud Key Management Service.
Console
Abra a página Gerenciamento de chaves no console do Google Cloud.
Clique no nome do keyring que contém o job de importação.
Clique na guia Jobs de importação na parte superior da página.
O estado ficará visível em Status, ao lado do nome do job de importação.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Use o comando versions list
para verificar o estado. Use o mesmo local, keyring e chave de destino que você criou anteriormente neste tópico.
gcloud kms keys versions list \ --keyring KEY_RING \ --location LOCATION \ --key KEY_NAME
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK do Cloud KMS para Go.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK do Cloud KMS para Java.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Cloud KMS para Node.js.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK do Cloud KMS para Python.
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
Chame o método ImportJob.get
e verifique o campo state
. Se state
for PENDING_GENERATION
, o job de importação ainda está sendo criado.
Verifique periodicamente o estado até que ele seja ACTIVE
.
Depois que a versão inicial da chave é importada, o status dela muda para Ativo. Para chaves simétricas, você precisa definir a versão da chave importada como a versão principal antes de usá-la.
Chaves simétricas: definir a versão principal
Esta etapa é obrigatória ao importar chaves simétricas e não é relevante para chaves assimétricas. Uma chave assimétrica não tem uma versão principal. É necessário usar a Google Cloud CLI para definir a versão principal.
gcloud kms keys set-primary-version KEY_NAME\ --location=LOCATION\ --keyring=KEY_RING\ --version=KEY_VERSION
Importar novamente uma chave destruída anteriormente
O Cloud Key Management Service é compatível com a reimportação de chaves. Isso permite restaurar uma
versão de chave importada anteriormente no estado DESTROYED
ou IMPORT_FAILED
para o
estado ENABLED
, fornecendo o material de chave original. Caso nenhum material de chave
original tenha sido importado devido a uma falha de importação inicial, qualquer material de chave
poderá ser fornecido.
Restrições
- Apenas
CryptoKeyVersions
importados anteriormente podem ser importados novamente. - O material da chave importada precisa corresponder ao material original da chave exatamente se ela tiver sido importada anteriormente.
CryptoKeyVersions
não é destruído antes do lançamento desse recurso. O camporeimport_eligible
daCryptoKeyVersion
serátrue
se a versão estiver qualificada para reimportação efalse
se não estiver.
As chaves de software e do Cloud HSM podem ser reimportadas, mas as chaves externas não podem ser importadas.
Como importar novamente uma chave destruída
Crie um ImportJob
para importar novamente seguindo as etapas em
Criar o job de importação. Você pode usar um ImportJob
existente ou um novo ImportJob
, desde que o nível de proteção corresponda ao nível de proteção original.
Console
Acesse a página Gerenciamento de chaves no console do Google Cloud.
Clique no nome do keyring que contém a chave com a versão que você importará novamente.
Clique na chave com a versão que você quer importar novamente.
Clique nos três pontos ao lado da versão da chave que você quer importar novamente.
Selecione Reimportar versão de chave.
Selecione seu job de importação no menu suspenso Selecionar tarefa de importação.
No seletor Fazer upload da chave encapsulada, selecione a chave que você já encapsulou. A chave precisa corresponder ao material original.
Clique em Importar novamente.
gcloud
Para usar o Cloud KMS na linha de comando, primeiro instale ou faça upgrade para a versão mais recente da Google Cloud CLI.
Importe novamente a versão da chave usando o material original da chave.
gcloud kms keys versions import \ --location LOCATION \ --keyring KEY_RING \ --key KEY_NAME \ --version KEY_VERSION \ --algorithm ALGORITHM \ --import-job IMPORT_JOB \ --target-key-file PATH_TO_KEY \
API
Estes exemplos usam curl como um cliente HTTP para demonstrar o uso da API. Para mais informações sobre controle de acesso, consulte Como acessar a API Cloud KMS.
No corpo da solicitação do método
cryptoKeyVersions.import
, defina o campocryptoKeyVersion
como o nome da versão da chave da versão que está sendo importada. Precisa ser um filho da chave de criptografia.No corpo da solicitação, defina o campo
algorithm
como o algoritmo da chave que está sendo importada. Esse valor precisa corresponder ao algoritmo da versão original da chave. O campoalgorithm
é do tipoCryptoKeyVersionAlgorithm
.No corpo da solicitação, defina o campo
wrappedKeyMaterial
para o material da chave que você já encapsulado.Chame o método
cryptoKeyVersions.import
. A respostacryptoKeyVersions.import
é do tipoCryptoKeyVersion
. Quando uma chave é importada, o estado dela éENABLED
e você pode usá-la no Cloud KMS.
A seguir
- Verificar uma chave importada. Depois de confirmar que o material da chave importada é idêntico à chave original, você pode usar a chave para assinar ou proteger dados.
- Resolver problemas na importação de chaves com falha.