Girando chaves raiz com base na política de rotação

É possível configurar uma política de rotação automática para uma chave raiz usando o IBM Cloud® Hyper Protect Crypto Services.

Ao configurar uma política de rotação automática para uma chave raiz, você encurta o tempo de vida da chave em intervalos regulares e limita a quantidade de informações que são protegidas por essa chave.

É possível criar uma política de rotação apenas para chaves raiz que são geradas no Hyper Protect Crypto Services. Se você importou a chave raiz inicialmente, deverá fornecer o novo material de chave codificado em Base64 para girar a chave. Para obter mais informações, consulte Girando chaves raiz sob demanda.

Deseja saber mais sobre as opções de rotação de chave no Hyper Protect Crypto Services? Confira Comparando suas opções de rotação de chave para obter mais informações.

Gerenciando políticas de rotação na IU

Se preferir gerenciar políticas para suas chaves raiz usando uma interface gráfica, você poderá usar a UI.

  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. Clique no ícone Ações ícone Ações para abrir uma lista de opções para a chave específica.

  6. A partir do menu de opções, clique em Editar política de rotação de chave para gerenciar a política de rotação para a chave.

  7. Alterne a Rotação de chave para On e mova a régua de controle para selecionar uma frequência de rotação em meses.

    Se a sua chave tiver uma política de rotação existente, a interface exibirá o período de rotação existente da chave.

  8. Clique em Salvar política para configurar a política para a chave.

Quando for a hora de girar a chave com base no intervalo de rotação que você especificar, o Hyper Protect Crypto Services substituirá automaticamente a chave raiz por um novo material de chave.

Gerenciando políticas de rotação com a API

Visualizando uma política de rotação

Para uma visualização de alto nível, é possível procurar as políticas de rotação associadas a uma chave raiz fazendo uma chamada GET para o terminal a seguir.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. Recupere suas credenciais de serviço e autenticação.

  2. Recupere a política de rotação para uma chave especificada, executando o comando cURL a seguir.

    curl -X GET \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json'
    

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

    Tabela 1. Descreve as variáveis necessárias para criar uma política de rotação com a API
    Variável Descrição
    region Obrigatório. A abreviatura da região, como us-south ou eu-de, que representa a área geográfica onde seuHyper Protect Crypto Services a instância de serviço reside. Para obter mais informações, consulte Terminais de serviços regionais.
    port Obrigatório. O número da porta do terminal da API.
    key_ID Obrigatório. O identificador exclusivo para a chave raiz que tem uma política de rotação existente.
    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.
    correlation_ID O identificador exclusivo que é usado para rastrear e correlacionar transações.

    Uma resposta GET api/v2/keys/{id}/policies bem-sucedida retorna detalhes da política que estão associados à sua chave. O objeto JSON a seguir mostra uma resposta de exemplo para uma chave raiz que tem uma política de rotação existente.

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 1
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-503CKNRHR7",
            "updatedat": "2019-03-06T16:31:05Z"
        }
      ]
    }
    

    O valor interval_month indica a frequência de rotação de chave em meses.

Criando uma política de rotação

Crie uma política de rotação para sua chave raiz, fazendo uma chamada PUT para o terminal a seguir.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. Recupere suas credenciais de serviço e autenticação.

  2. Crie uma política de rotação para uma chave especificada, executando o comando cURL a seguir.

    curl -X PUT \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json' \
      -d '{
     "metadata": {
       "collectionType": "application/vnd.ibm.kms.policy+json",
       "collectionTotal": 1
     },
     "resources": [
       {
       "type": "application/vnd.ibm.kms.policy+json",
       "rotation": {
         "interval_month": <rotation_interval>
        }
       }
      ]
    }'
    

    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 criar uma política de rotação com a API
    Variável Descrição
    region Obrigatório. A abreviatura da região, como us-south ou eu-de, que representa a área geográfica onde seuHyper Protect Crypto Services a instância de serviço reside. Para obter mais informações, consulte Terminais de serviços regionais.
    port Obrigatório. O número da porta do terminal da API.
    key_ID Obrigatório. O identificador exclusivo da chave raiz para a qual você deseja criar uma política de rotação.
    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.
    correlation_ID O identificador exclusivo que é usado para rastrear e correlacionar transações.
    rotation_interval Obrigatório. Um valor de número inteiro que determina o tempo de intervalo de rotação de chave em meses. O mínimo é 1 e o máximo é 12.

    Uma resposta PUT api/v2/keys/{id}/policies bem-sucedida retorna detalhes da política que estão associados à sua chave. O objeto JSON a seguir mostra uma resposta de exemplo para uma chave raiz que tem uma política de rotação existente.

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 1
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-503CKNRHR7",
            "updatedat": "2019-03-06T16:31:05Z"
        }
      ]
    }
    

Atualizando uma política de rotação

Atualize uma política existente para uma chave raiz, fazendo uma chamada PUT para o terminal a seguir.

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies
  1. Recupere suas credenciais de serviço e autenticação.

  2. Substitua a política de rotação por uma chave especificada, executando o comando cURL a seguir.

    curl -X PUT \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/policies \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
      -H 'content-type: application/vnd.ibm.kms.policy+json' \
      -d '{
     "metadata": {
       "collectionType": "application/vnd.ibm.kms.policy+json",
       "collectionTotal": 1
     },
     "resources": [
       {
       "type": "application/vnd.ibm.kms.policy+json",
       "rotation": {
         "interval_month": <new_rotation_interval>
        }
       }
      ]
    }'
    

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

    Tabela 3. Descreve as variáveis necessárias para criar uma política de rotação com a API
    Variável Descrição
    region Obrigatório. A abreviatura da região, como us-south ou eu-de, que representa a área geográfica onde seuHyper Protect Crypto Services a instância de serviço reside. Para obter mais informações, consulte Terminais de serviços regionais.
    port Obrigatório. O número da porta do terminal da API.
    key_ID Obrigatório. O identificador exclusivo da chave raiz para a qual você deseja substituir uma política de rotação.
    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.
    correlation_ID O identificador exclusivo que é usado para rastrear e correlacionar transações.
    new_rotation_interval Obrigatório. Um valor de número inteiro que determina o tempo de intervalo de rotação de chave em meses. O mínimo é 1 e o máximo é 12.

    Uma resposta PUT api/v2/keys/{id}/policies bem-sucedida retorna detalhes da política atualizados que estão associados à sua chave. O objeto JSON a seguir mostra uma resposta de exemplo para uma chave raiz com uma política de rotação atualizada.

    {
        "metadata": {
            "collectionTotal": 1,
            "collectionType": "application/vnd.ibm.kms.policy+json"
        },
        "resources": [
        {
            "id": "a1769941-9805-4593-b6e6-290e42dd1cb5",
            "rotation": {
                "interval_month": 2
            },
            "createdby": "IBMid-503CKNRHR7",
            "createdat": "2019-03-06T16:31:05Z",
            "updatedby": "IBMid-820DPWINC2",
            "updatedat": "2019-03-10T12:24:22Z"
        }
      ]
    }
    

    Os valores interval_month e updatedat são atualizados nos detalhes da política para a chave. Se um usuário diferente atualiza uma política para uma chave que você criou inicialmente, o valor updatedby também muda para mostrar o identificador para a pessoa que enviou a solicitação.

O que vem a seguir