Criando chaves raiz
É possível usar IBM Cloud® Hyper Protect Crypto Services para criar chaves raizA symmetric wrapping key that is used for encrypting and decrypting other keys that are stored in a data service. usando a IU ou programaticamente com a API do serviço de gerenciamento de chave Hyper Protect Crypto Services.
Chaves raiz são chaves simétricas de quebra de chaves usadas para proteger a segurança dos dados criptografados na nuvem. Para obter mais informações sobre chaves raiz, consulte Criptografia de envelope.
Criando chaves raiz com a IU
Depois de criar uma instância do serviço, conclua as etapas a seguir para criar uma chave raiz com a UI.
Se você ativar configurações de autorização dupla para a sua instância do Hyper Protect Crypto Services, tenha em mente que quaisquer chaves que você incluir no serviço requerem uma autorização de dois usuários para excluir chaves.
-
Acesse Menu > Lista de recursos para visualizar uma lista de seus recursos.
-
Em sua lista de recursos do IBM Cloud, selecione a sua instância provisionada do Hyper Protect Crypto Services.
-
Para criar uma nova chave, selecione a guia Chaves KMS no menu lateral.
-
Na tabela Chaves, clique em Incluir chave e selecione Criar uma chave.
Especifique os detalhes da chave:
Tabela 1. Descreve as configurações para criar uma chave Configuração Descrição Tipo de chave O tipo de chave que você gostaria de gerenciar no Hyper Protect Crypto Services. Na lista de tipos de chaves, selecione Chave raiz. Nome da chave Um nome exclusivo legível para fácil identificação da sua chave. O comprimento deve estar dentro de 2 a 90 caracteres. Para proteger sua privacidade, assegure-se de que o nome da chave não contenha informações pessoalmente identificáveis (PII), como seu nome ou local. Alias da chave (Opcional) Um ou mais aliases exclusivos e legíveis que você deseja designar à sua chave para fácil reconhecimento. O tamanho do alias pode ser de 2 a 90 caracteres. É possível configurar até cinco aliases de chave para a chave, com cada um separado por uma vírgula. Nota: Cada alias deve ser alfanumérico, com distinção entre maiúsculas e minúsculas e não pode conter espaços ou caracteres especiais diferentes de traços (-) ou sublinhados (_). O alias não pode ser um UUID versão 4 e não deve ser um nome reservado Hyper Protect Crypto Services:
allowed_ip,key,keys,metadata,policy,policies,registration,registrations,ring,rings,rotate,wrap,unwrap,rewrap,version,versions.ID do conjunto de chaves Selecione um conjunto de chaves da lista que contém os conjuntos de chaves existentes. Se você não designar um conjunto de chaves, a chave é incluída no conjunto de chaves default. Para obter mais informações sobre conjuntos de chaves, consulte Gerenciando conjuntos de chaves.Data de expiração (Opcional) Configure a data e a hora quando a chave expira. Após a data de expiração, a chave é movida para o estado Desativado Para obter mais informações sobre o estado de chaves, consulte Monitorando o ciclo de vida de chaves de criptografia. Descrição (Opcional) Inclua uma descrição estendida para a sua chave. Ela pode ser de 2 a 240 caracteres de comprimento. -
Quando terminar de preencher os detalhes da chave, clique em Criar chave para confirmar.
As chaves que são criadas no serviço são chaves de 256 bits simétricas, suportadas pelo algoritmo AES-CBC. Para segurança incluída, as chaves são geradas por módulos de segurança de hardware(HSMs)A physical appliance that provides on-demand encryption, key management, and key storage as a managed service. certificados FIPS 140-2 Nível 4 que estão localizados em data centers seguros do IBM Cloud.
Criando chaves raiz com a API
Crie uma chave raiz fazendo uma chamada POST para o terminal a seguir.
https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys
-
Recupere suas credenciais de serviço e autenticação para trabalhar com chaves no serviço.
-
Chame o API do serviço de gerenciamento de chave Hyper Protect Crypto Services com o comando
curla seguir:curl -X POST \ "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "content-type: application/vnd.ibm.kms.key+json" \ -H "x-kms-key-ring: <key_ring_ID>" \ -H "correlation-id: <correlation_ID>" \ -d '{ "metadata": { "collectionType": "application/vnd.ibm.kms.key+json", "collectionTotal": 1 }, "resources": [ { "type": "application/vnd.ibm.kms.key+json", "name": "<key_name>", "aliases": [alias_list], "description": "<key_description>", "expirationDate": "<YYYY-MM-DDTHH:MM:SS.SSZ>", "extractable": <key_type> } ] }'Substitua as variáveis na solicitação de exemplo de acordo com a tabela a seguir.
Tabela 2. Descreve as variáveis necessárias para adicionar uma chave raiz com a API Variável Descrição regionObrigatório. A abreviação de região, como us-southouau-syd, que representa a área geográfica em que a sua instância de serviço do Hyper Protect Crypto Services reside. Para obter mais informações, consulte Terminais de serviços regionais.portObrigatório. O número da porta do terminal da API. IAM_tokenObrigatório. Seu token de acesso do IBM Cloud. Inclua o conteúdo integral do token IAM, incluindo valor Bearer, na solicitação cURL. Para obter mais informações, consulte Recuperando um token de acesso.instance_IDObrigatório. O identificador exclusivo que é designado para sua instância de serviço Hyper Protect Crypto Services. Para obter mais informações, consulte Recuperando um ID da instância. key_ring_IDOpcional. O identificador exclusivo para o conjunto de chaves de destino para o qual você deseja designar a chave. Se não especificado, o cabeçalho será configurado automaticamente como defaulte a chave pertencerá ao conjunto de chaves padrão na instância especificada do Hyper Protect Crypto Services.Para obter mais informações, consulte Gerenciando conjuntos de chaves.
correlation_IDO identificador exclusivo que é usado para rastrear e correlacionar transações. key_nameObrigatório. Um nome exclusivo legível para fácil identificação da sua chave. Importante: Para proteger sua privacidade, não armazene seus dados pessoais como metadados para sua chave.
alias_listOpcional. Um ou mais aliases exclusivos e legíveis designados à sua chave. Importante: para proteger sua privacidade, não armazene seus dados pessoais como metadados para sua chave.
Cada alias deve ser alfanumérico, com distinção entre maiúsculas e minúsculas e não pode conter espaços ou caracteres especiais diferentes de traços (-) ou sublinhados (_). O alias não pode ser um UUID versão 4 e não deve ser um nome reservado Hyper Protect Crypto Services:
allowed_ip,key,keys,metadata,policy,policies,registration,registrations,ring,rings,rotate,wrap,unwrap,rewrap,version,versions. O tamanho do alias pode ter 2 a 90 caracteres (inclusive).key_descriptionOpcional: uma descrição estendida de sua chave. Importante: Para proteger sua privacidade, não armazene seus dados pessoais como metadados para sua chave.
YYYY-MM-DDHH:MM:SS.SSOpcional: a data e hora em que a chave expira no sistema, no formato RFC 3339. Se o atributo expirationDatefor omitido, a chave não expirará..key_typeUm valor booleano determina se o material de chave pode sair do serviço. Ao configurar
o atributo extractablecomofalse, o serviço cria uma chave raizque pode ser usada para operações wrapouunwrap.Para proteger a confidencialidade de seus dados pessoais, evite inserir informações pessoalmente identificáveis (PII), como seu nome ou local, ao incluir chaves no serviço. Para obter mais exemplos de PIII, consulte a seção 2.2 da Publicação Especial NIST 800-122.
Se você configurar a
expirationDateem sua solicitação, a chave será movida para o estado desativado dentro de 1 hora após a data de expiração da chave.Uma resposta
POST /v2/keysbem-sucedida retorna o valor de ID para a sua chave, junto a outros metadados. O ID é um identificador exclusivo que é designado à sua chave e é usado para chamadas subsequentes para a API de serviço de gerenciamento de chaves do Hyper Protect Crypto Services.{ "metadata": { "collectionType": "application/vnd.ibm.kms.key+json", "collectionTotal": 1 }, "resources": [ { "type": "application/vnd.ibm.kms.key+json", "id": "02fd6835-6001-4482-a892-13bd2085f75d", "name": "test-root-key", "aliases": [ "alias-1", "alias-2" ], "description": "A test root key", "state": 1, "extractable": false, "crn": "crn:v1:bluemix:public:hs-crypto:us-south:a/f047b55a3362ac06afad8a3f2f5586ea:12e8c9c2-a162-472d-b7d6-8b9a86b815a6:key:02fd6835-6001-4482-a892-13bd2085f75d", "imported": false, "creationDate": "2020-03-12T03:37:32Z", "createdBy": "...", "algorithmType": "AES", "algorithmMetadata": { "bitLength": "256", "mode": "CBC_PAD" }, "algorithmBitSize": 256, "algorithmMode": "CBC_PAD", "lastUpdateDate": "2020-03-12T03:37:32Z", "keyVersion": { "id": "2291e4ae-a14c-4af9-88f0-27c0cb2739e2", "creationDate": "2020-03-12T03:37:32Z" }, "dualAuthDelete": { "enabled": false }, "deleted": false } ] }Para obter uma descrição detalhada dos parâmetros de resposta, consulte o Hyper Protect Crypto Services doc de referência da API REST.
-
Opcional: verifique se a chave foi criada executando a chamada a seguir para procurar as chaves na instância de serviço do Hyper Protect Crypto Services.
curl -X GET \ https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys \ -H 'accept: application/vnd.ibm.collection+json' \ -H 'authorization: Bearer <IAM_token>' \ -H 'bluemix-instance: <instance_ID>' \ -H 'correlation-id: <correlation_ID>' \
Após criar uma chave raiz com o serviço, a chave fica dentro dos limites de Hyper Protect Crypto Services e o material da chave não pode ser recuperado.
O que vem a seguir
- Para descobrir mais sobre como proteger chaves com criptografia de envelope, consulte Chaves de quebra.
- Para descobrir a instrução da importação de sua própria chave, confira Importando chaves raiz ou Importando chaves padrão.
- Para saber mais sobre o gerenciamento programático de suas chaves, verifique o documento de referência da API do serviço de gerenciamento de chaves do Hyper Protect Crypto Services