Visualizando associações entre chaves raiz e recursos criptografados do IBM Cloud

É possível visualizar associações entre chaves raiz e outros recursos em nuvem, como os depósitos do IBM Cloud Object Storage, usando a API de serviço de gerenciamento de chaves IBM Cloud® Hyper Protect Crypto Services.

Quando você usa uma chave raiz para proteger dados em repouso com criptografia de envelope, os serviços de nuvem que usam a chave podem criar um registro entre a chave e o recurso que ela protege. Registros são associações entre chaves e recursos em nuvem que ajudam a obter uma visualização completa de quais chaves de criptografia protegem quais dados no IBM Cloud.

Tabela 1. Descreve os benefícios do registro de chave
Benefício Descrição
Visualização centralizada de recursos protegidos Como um administrador para a sua instância dos Hyper Protect Crypto Services, você deseja entender rapidamente quais recursos em nuvem são protegidos por uma chave raiz.
Segurança e conformidade Como um administrador de segurança, você precisa de uma maneira para determinar o risco que está envolvido com a destruição de uma chave raiz. Você deseja examinar quais chaves estão protegendo ativamente quais dados para que possa avaliar as exposições com base nas necessidades de segurança ou de conformidade de sua organização.

O registro de chave é um recurso extra que está disponível apenas se o serviço de nuvem o ativa como parte da integração com Hyper Protect Crypto Services. Para determinar se um serviço integrado suporta, ou não, registro de chaves, consulte a documentação do serviço para obter mais informações.

Visualizando recursos protegidos com a IU

É possível procurar os registros que estão disponíveis entre as suas chaves e os recursos em nuvem dos Hyper Protect Crypto Services usando a GUI dos Hyper Protect Crypto Services.

Visualizando recursos protegidos associados à sua chave raiz

  1. Efetue login na IU.

  2. Acesse Menu > Lista de recursos para visualizar uma lista de seus recursos.

  3. Em sua lista de recursos do IBM Cloud, selecione a sua instância provisionada do Hyper Protect Crypto Services.

  4. Na página Chaves KMS, use a tabela Chaves para procurar as chaves em seu serviço.

  5. Para visualizar os recursos protegidos de uma chave raiz específica, clique no ícone Ações ícone Ações para abrir uma lista de opções para a chave e selecione Visualizar recursos associados para procurar todos os recursos protegidos pela chave.

    Tabela 2. Descreve a tabela de visualização de recursos associados
    Coluna Descrição
    Resource name O nome do recurso em nuvem, como um depósito do Cloud Object Storage, que está associado com a chave.
    Service name O nome da instância de serviço da IBM Cloud na qual o recurso reside.
    Retention policy Indica se o recurso em nuvem tem uma política de retenção. Se o valor for True, uma política de retenção será ativada para o recurso em nuvem e a chave que está associada ao recurso em nuvem não poderá ser excluída. Se o valor for False, a política de retenção não será ativada.
  6. Para visualizar detalhes de cada recurso, expanda os detalhes do recurso clicando no ícone de acento circunflexo (^) na coluna Resource name.

    A tabela a seguir descreve os detalhes de registro.

    Tabela 3. Descreve as propriedades que estão associadas a um recurso
    Campo Descrição
    Created A data e a hora em que o recurso foi associado pela primeira vez com a chave.
    Last updated A data e a hora em que o registro foi atualizado.
    Description A descrição do registro.
    Key version ID A versão da chave raiz que está protegendo o recurso em nuvem.
    Key version date A data e a hora em que a versão da chave raiz foi atualizada.
    Cloud resource name Representa o recurso em nuvem que está associado à chave, incluindo o Cloud Resource Name (CRN), version, cname, ctype e assim por diante.

É possível usar o campo de procura para procurar quaisquer recursos associados à chave raiz com o nome do recurso ou o ID da versão da chave.

Visualizando recursos em sua instância

  1. Efetue login na IU.

  2. Acesse Menu > Lista de recursos para visualizar uma lista de seus recursos.

  3. Em sua lista de recursos do IBM Cloud, selecione a sua instância provisionada do Hyper Protect Crypto Services.

  4. Na página Recursos associados do KMS, use a tabela Recursos associados do serviço de gerenciamento de chaves para procurar os registros em seu serviço.

    Tabela 4. Descreve a tabela de recursos associados
    Coluna Descrição
    Resource name O nome do recurso em nuvem, como um depósito do Cloud Object Storage, que está associado com a chave.
    Key name O nome legível que identifica a chave raiz que está associada ao recurso em nuvem especificado.
    Key ID O ID que identifica a chave raiz que está associada ao recurso em nuvem especificado.
    Service name O nome da instância de serviço da IBM Cloud na qual o recurso reside.
    Retention policy Indica se o recurso em nuvem pode ser apagado. Se o valor estiver Enabled, o recurso em nuvem não pode ser apagado e a chave que está associada ao recurso em nuvem não pode ser excluída. Se o valor estiver Disabled, o recurso em nuvem pode ser apagado. Será possível excluir a chave associada ao recurso em nuvem, se necessário.
  5. Clique no ícone de acento circunflexo (^) na coluna Resource name para visualizar uma lista de detalhes para um registro específico.

    A tabela a seguir descreve os detalhes de registro.

    Tabela 5. Descreve as propriedades que estão associadas a um recurso
    Campo Descrição
    Created A data e a hora em que o recurso foi associado pela primeira vez com a chave.
    Last updated A data e a hora em que o registro foi atualizado.
    Description A descrição do registro.
    Key version ID A versão da chave raiz que está protegendo o recurso em nuvem.
    Key version date A data e a hora em que a versão da chave raiz foi atualizada.
    Cloud resource name Representa o recurso em nuvem que está associado à chave, incluindo o Cloud Resource Name (CRN), version, cname, ctype e assim por diante.

Além de procurar um recurso, é possível também procurar recursos por Nome do recurso, ID de chave e política de retenção. Para isso, clique no botão Filter, selecione as opções de filtro da lista e clique em Aplicar.

Visualizando os recursos protegidos com a API

Também é possível procurar os registros que estão disponíveis entre as suas chaves Hyper Protect Crypto Services e seus recursos em nuvem, usando a API de serviço de gerenciamento de chaves Hyper Protect Crypto Services.

Por exemplo, ao chamar GET api/v2/keys/{id}/registrations, o Hyper Protect Crypto Services retorna detalhes sobre o registro da chave. A saída JSON a seguir representa um registro entre uma chave e um recurso em nuvem.

{
  "metadata": {
      "collectionType": "application/vnd.ibm.kms.registration+json",
      "collectionTotal": 1
  },
  "resources": [
    {
      "keyId": "string",
      "resourceCrn": "crn:v1:bluemix:public:<service-name>:<region>:a/<account-id>:<service-instance>:bucket:<bucket-name>",
      "createdBy": "string",
      "creationDate": "2010-01-12T05:23:19+0000",
      "updatedBy": "string",
      "lastUpdated": "2010-01-12T05:23:19+0000",
      "description": "string",
      "preventKeyDeletion": true,
      "keyVersion": {
          "id": "string",
          "creationDate": "2010-01-12T05:23:19+0000"
      }
    }
  ]
}

A tabela a seguir descreve as propriedades de um registro.

Tabela 6. Propriedades associadas a um registro
Parâmetro Descrição
keyID O ID que identifica a chave raiz que está associada ao recurso em nuvem.
resourceCrn O Cloud Resource Name (CRN) que representa o recurso em nuvem, como um depósito do Cloud Object Storage, que está associado à chave.
createdBy O identificador exclusivo do recurso que criou o registro.
creationDate A data em que o registro foi criado.
updatedBy O identificador exclusivo do recurso que atualizou o registro.
lastUpdatedDate A data em que o registro foi criado.
description Uma descrição para o registro.
preventKeyDeletion Um booleano que determina se o Hyper Protect Crypto Services deve evitar a exclusão da chave raiz. Se true, o recurso associado não será apagável devido a uma política de retenção e a chave Hyper Protect Crypto Services que está criptografando o recurso não poderá ser excluída.
keyVersion A versão da chave raiz que está protegendo o recurso em nuvem.

Listando registros para uma chave raiz específica com a API

É possível recuperar os detalhes de registro que estão associados a uma chave raiz específica fazendo uma chamada GET para o terminal a seguir.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/registrations
  1. Recupere as suas credenciais de autenticação para trabalhar com a API.

  2. Visualize os registros que estão associados a uma chave raiz executando o comando cURL a seguir.

    curl -X GET \
    https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/registrations \
    -H 'authorization: Bearer <IAM_token>' \
    -H 'bluemix-instance: <instance_ID>'
    

    Substitua as variáveis na solicitação de exemplo de acordo com a tabela a seguir.

    Tabela 7. Descreve as variáveis necessárias para listar todos os registros associados a uma chave raiz
    Variável Descrição
    region Obrigatório. A abreviação da região, como us-south ou eu-de, que representa a área geográfica na qual sua instância do Hyper Protect Crypto Services reside. Para obter mais informações, consulte Terminais de serviços regionais.
    port Obrigatório. O número da porta do terminal da API.
    IAM_token Obrigató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_ID Obrigató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.

    Quando bem-sucedida, a solicitação GET api/v2/keys/<key_ID>/registrations retorna uma coleção dos registros que estão mapeados para o ID de chave especificado.

    {
      "metadata": {
          "collectionType": "application/vnd.ibm.kms.registration+json",
          "collectionTotal": 2
      },
      "resources": [
        {
          "keyId": "string",
          "resourceCrn": "crn:v1:bluemix:public:cloud-object-storage:global:a/<account-id>:<service-instance>:bucket:<bucket-name>",
          "createdBy": "string",
          "creationDate": "2010-01-12T05:23:19+0000",
          "updatedBy": "string",
          "lastUpdated": "2010-01-12T05:23:19+0000",
          "description": "string",
          "preventKeyDeletion": true,
          "keyVersion": {
              "id": "string",
              "creationDate": "2010-01-12T05:23:19+0000"
          }
        },
        {
          "keyId": "string",
          "resourceCrn": "crn:v1:bluemix:public:cloud-object-storage:global:a/<account-id>:<service-instance>:bucket:<other-bucket-name>",
          "createdBy": "string",
          "creationDate": "2010-01-12T05:23:19+0000",
          "updatedBy": "string",
          "lastUpdated": "2010-01-12T05:23:19+0000",
          "description": "string",
          "preventKeyDeletion": true,
          "keyVersion": {
              "id": "string",
              "creationDate": "2010-01-12T05:23:19+0000"
          }
        }
      ]
    }
    

    O valor resourceCrn representa o identificador exclusivo do recurso em nuvem que é criptografado por keyId. Os metadados associados ao registro, como a data de criação, também são retornados no corpo de resposta.

    Por padrão, GET api/v2/keys/registrations retorna os primeiros 200 registros, mas é possível ajustar esse limite usando o parâmetro limit no momento da consulta.

Listando registros para quaisquer chaves raiz com a API

Também é possível recuperar uma lista de registros que estão associados a qualquer recurso em nuvem fazendo uma chamada GET para o terminal a seguir.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/registrations?urlEncodedResourceCRNQuery=<url_encoded_CRN_query>
  1. Recupere as suas credenciais de autenticação para trabalhar com a API.

  2. Visualize os registros que correspondem a uma consulta de CRN que você especifica executando o comando cURL a seguir.

    curl -X GET \
    https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/registrations?urlEncodedResourceCRNQuery=<url_encoded_CRN_query> \
    -H 'authorization: Bearer <IAM_token>' \
    -H 'bluemix-instance: <instance_ID>'
    

    Substitua as variáveis na solicitação de exemplo de acordo com a tabela a seguir.

    Tabela 8. Descreve as variáveis necessárias para listar as registrações por consulta de CRN.
    Variável Descrição
    region Obrigatório. A abreviação da região, como us-south ou eu-de, que representa a área geográfica na qual sua instância do Hyper Protect Crypto Services reside. Para obter mais informações, consulte Terminais de serviços regionais.
    port Obrigatório. O número da porta do terminal da API.
    url_encoded_CRN_query Filtros para recursos associados a um Cloud Resource Name(CRN) especificado usando caracteres curinga codificados por URL (*). O parâmetro precisa conter todos os segmentos de CRN e deve ser codificado por URL Para visualizar exemplos, consulte Exemplos de consulta de CRN.
    IAM_token Obrigató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_ID Obrigató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.

Exemplos de consulta de CRN

Use consultas de CRN codificadas por URL que contêm todos os segmentos de CRN. Para saber mais sobre os segmentos de CRN e o formato, consulte Cloud Resource Names.

Quando um serviço integrado chama a API de serviço de gerenciamento de chaves do Hyper Protect Crypto Services, o Hyper Protect Crypto Services substitui a consulta de CRN fornecida (até o segmento service-instance) pelo CRN do serviço de chamada. Isso significa que os serviços que usam o Hyper Protect Crypto Services para associar chaves a recursos em seu nome só podem visualizar ou consultar CRNs que correspondam aos oito primeiros segmentos de seu CRN de serviço.

  • Para procurar a existência de um segmento de CRN, use dois-pontos (:) seguido por um asterisco (*).

    crn:v1:bluemix:public:databases-for-redis:us-south:a/274074dce64e9c423ffc238516c755e1:29caf0e7-120f-4da8-9551-3abf57ebcfc7:*:*
    

    Esta consulta retorna os registros de Bancos de dados do Redis que estão associados a todos os tipos e nomes de recursos para o ID de implementação_29caf0e7-120f-4da8-9551-3abf57ebcfc7_.

  • Para procurar um segmento CRN prefixado por <string>, use dois pontos seguidos por <string>* no último segmento da consulta CRN.

    crn:v1:bluemix:public:cloud-object-storage:global:a/e1bb63d6a20dc57c87501ac4c4c99dcb:*:bucket:prod*
    

    Esta consulta retorna todos os registros de depósitos de Cloud Object Storage dentro de uma conta e1bb63d6a20dc57c87501ac4c4c99dcb que são prefixados por prod.

    crn:v1:bluemix:public:databases-for-postgresql:us-south:a/e1bb63d6a20dc57c87501ac4c4c99dcb:76b98bfd-f730-47b8-b163-515187e070a7:*:<string>*
    

    Esta consulta retorna todos os registros Cloud Databases para ID de implementação 76b98bfd-f730-47b8-b163-515187e070a7 que são prefixados por <string>.

As tabelas a seguir fornecem uma lista de exemplos de consulta de CRN antes e após a codificação de URL. Para visualizar os valores codificados por URL, clique na guia Codificado por URL.

Tabela 9. Exemplos de consulta de CRN
Valor
crn:v1:bluemix:public:databases-for-redis:us-south:a/274074dce64e9c423ffc238516c755e1:29caf0e7-120f-4da8-9551-3abf57ebcfc7:*:*
crn:v1:bluemix:public:cloud-object-storage:global:a/e1bb63d6a20dc57c87501ac4c4c99dcb:*:bucket:prod*
crn:v1:bluemix:public:cloudantnosqldb:us-south:a/f586c28d154d4c65a4a4a34cf75f55d0:94255ea3-af1c-41b7-9805-61f775e20702:*:prod*.
Tabela 9. Exemplos de consulta de CRN
Valor
crn%3Av1%3Abluemix%3Apublic%3Adatabases-for-redis%3Aus-south%3Aa%2F274074dce64e9c423ffc238516c755e1%3A29caf0e7-120f-4da8-9551-3abf57ebcfc7%3A*%3A*
crn%3Av1%3Abluemix%3Apublic%3Acloud-object-storage%3Aglobal%3Aa%2Fe1bb63d6a20dc57c87501ac4c4c99dcb%3A*%3Abucket%3Aprod*
crn%3Av1%3Abluemix%3Apublic%3Acloudantnosqldb%3Aus-south%3Aa%2Ff586c28d154d4c65a4a4a34cf75f55d0%3A94255ea3-af1c-41b7-9805-61f775e20702%3A%2A%3Aprod%2A

O que vem a seguir

Para saber mais sobre a visualização de registros, confira o documento de referência da API do serviço de gerenciamento de chave Hyper Protect Crypto Services.