Alternar AWS KMS keys - AWS Key Management Service

Alternar AWS KMS keys

As melhores práticas criptográficas desencorajam a reutilização extensiva de chaves de criptografia. Para criar um novo material criptográfico para suas chaves do KMS, você pode criar novas chaves do KMS e, em seguida, alterar suas aplicações ou aliases para usar as novas chaves do KMS. Ou você pode habilitar a alternância automática de chaves para uma chave do KMS existente.

Quando você habilita a alternância automática de chaves para uma chave gerenciada pelo cliente, o AWS KMS gera um novo material criptográfico para a chave do KMS a cada ano. O AWS KMS também salva o material criptográfico mais antigo da chave do KMS perpetuamente para que possa ser usado para descriptografar dados criptografados por ele. O AWS KMS não exclui nenhum material de chaves alternado até que você exclua a chave do KMS.

A alternância de chaves altera apenas o material de chave da chave do KMS, que é o material criptográfico usado em operações de criptografia. A chave do KMS é o mesmo recurso lógico, independentemente da ocorrência de alterações ou do número de vezes que estas tenham sido feitas no material de chave. As propriedades da chave do KMS não são alteradas, conforme mostrado na imagem a seguir.

A alternância de chaves automática tem os seguintes benefícios:

  • As propriedades da chave do KMS, incluindo seu ID de chave, ARN de chave, região, políticas e permissões, não são alteradas quando há alternância na chave.

  • Não é necessário alterar aplicações ou aliases que fazem referência ao ID de chave ou ARN de chave da chave do KMS.

  • Depois que você habilita a alternância de chaves, o AWS KMS alterna a chave do KMS automaticamente a cada ano. Você não precisa lembrar nem programar a atualização.

No entanto, a alternância automática de chaves não afeta os dados protegidos pela chave do KMS. Ela não alterna as chaves de dados geradas pela chave do KMS, não criptografa novamente quaisquer dados protegidos pela chave do KMS e não reduz o impacto de uma chave de dados comprometida.

Você pode optar por criar uma nova chave do KMS e usá-la em vez da chave do KMS original. Isso tem o mesmo efeito que alternar o material da chave em uma chave do KMS existente e, portanto, normalmente é considerado como alternar manualmente a chave. A alternância manual é uma boa opção quando você deseja controlar a programação da mudança de chaves. Isso também fornece uma maneira de alternar chaves do KMS que não estão qualificadas para alternância automática de chaves, incluindo chaves do KMS assimétricas, chaves do KMS em armazenamentos de chaves personalizados e chave do KMS com material de chave importado.

Alternância de chaves e definição de preço

Alternar chaves gerenciadas pelo cliente pode resultar em cobranças extras mensais. Para obter mais informações, consulte Definição de preço do AWS Key Management Service. Para obter informações mais detalhadas sobre chaves de backup e alternância, consulte o Detalhes criptográficos do AWS Key Management Service.

Como funciona a alternância de chaves automática

A alternância de chaves no AWS KMS é uma prática recomendada criptográfica que foi criada para ser transparente e fácil de usar. O AWS KMS é compatível com a alternância automática opcional de chaves somente para chaves gerenciadas pelo cliente.

  • Gerenciar material de chave O AWS KMS retém todo o material de chave de uma chave do KMS, mesmo que a alternância de chaves esteja desabilitada. O material de chave é excluído apenas quando a chave do KMS é excluída. Quando você usa uma chave do KMS para criptografar, o AWS KMS usa o material de chave atual. Quando você usa a chave do KMS para descriptografar, o AWS KMS usa o material de chave que foi usado para criptografar.

  • Ativar e desativar a alternância de chaves. Por padrão, a alternância automática de chaves está desabilitada em chaves gerenciadas pelo cliente. Quando você habilita (ou reaabilita) a alternância automática de chaves, o AWS KMS alterna automaticamente a chave do KMS 365 dias após a data de habilitação e a cada 365 dias depois disso.

  • Chaves do KMS desabilitadas. Enquanto uma chave do KMS permanece desabilitada, o AWS KMS não a alterna. No entanto, o status da alternância de chaves não muda, e você não pode alterá-lo enquanto a chave do KMS está desabilitada. Quando a chave do KMS for habilitada novamente, se o material de chave tiver mais de 365 dias, o AWS KMS a alternará imediatamente e a cada 365 dias depois disso. Se o material de chave tiver menos de 365 dias, o AWS KMS retomará a programação original da alternância de chaves.

  • Chaves do KMS com exclusão pendente. Enquanto uma chave do KMS permanece com exclusão pendente, o AWS KMS não a alterna. O status da alternância de chaves é definido como false e você não pode alterá-lo enquanto a exclusão estiver pendente. Se a exclusão for cancelada, o status da alternância de chaves anterior será restaurado. Se o material de chave tiver mais de 365 dias, o AWS KMS a alternará imediatamente e a cada 365 dias depois disso. Se o material de chave tiver menos de 365 dias, o AWS KMS retomará a programação original da alternância de chaves.

  • Chaves gerenciadas pela AWS Não é possível gerenciar a alternância de chaves para Chaves gerenciadas pela AWS . O AWS KMS alterna Chaves gerenciadas pela AWS automaticamente a cada três anos (1.095 dias).

  • chaves de propriedade da AWS Não é possível gerenciar a alternância de chaves para chaves de propriedade da AWS . A estratégia de alternância de chaves para uma chave de propriedade da AWS é determinada pelo serviço da AWS que cria e gerencia a chave. Para obter detalhes, consulte o tópico Criptografia em repouso, no manual do usuário ou no guia do desenvolvedor do serviço.

  • AWS Serviços da. É possível habilitar a alternância automática de chaves nas chaves gerenciadas pelo cliente que você usa para criptografia no lado do servidor em serviços da AWS. A alternância anual é transparente e compatível com os serviços da AWS.

  • Chaves de várias regiões. Você pode habilitar e desabilitar a alternância automática de chaves parachaves de várias regiões. Você define a propriedade apenas na chave primária. Quando o AWS KMS sincroniza as chaves, ele copia a configuração de propriedade da chave primária para suas chaves de réplica. Quando o material de chave da chave primária é alternado, o AWS KMS copia automaticamente esse material para todas as suas chaves de réplica. Para obter mais detalhes, consulte Alternância de chaves de várias regiões.

  • Monitoramento da alternância de chaves. Quando o AWS KMS alterna automaticamente o material de chave para uma Chave gerenciada pela AWS ou uma chave gerenciada pelo cliente, ele grava um evento KMS CMK Rotation no Amazon CloudWatch Events e um evento RotateKey no log do AWS CloudTrail. É possível usar esses registros para verificar se a chave do KMS foi alternada.

  • Tipos de chave do KMS sem suporte. A alternância automática de chaves não tem suporte com os seguintes tipos de chaves do KMS, mas você pode alternar essas chaves do KMS manualmente.

  • Consistência final. A alternância automática de chaves está sujeita aos mesmos efeitos de consistência final de outras operações de gerenciamento do AWS KMS. Pode haver um pequeno atraso antes que o novo material de chave esteja disponível no AWS KMS. Porém, o material de chave alternante não causa interrupção ou atraso em operações de criptografia. O material de chave atual será usado em operações de criptografia até que o novo material de chave esteja disponível no AWS KMS. Quando o material chave para uma chave de várias regiões é alternado automaticamente, o AWS KMS usa o material de chave atual até que o novo material de chave esteja disponível em todas as regiões com uma chave de várias regiões relacionada.

Como habilitar e desabilitar a alternância de chaves automática

É possível usar o console do AWS KMS ou a API do AWS KMS para habilitar e desabilitar a alternância automática de chaves e visualizar o status da alternância de qualquer chave gerenciada pelo cliente

Quando você habilita a alternância automática de chaves, o AWS KMS alterna a chave do KMS 365 dias após a data de habilitação e a cada 365 dias depois disso.

Habilitar e desabilitar a alternância de chaves (console)

  1. Faça login no AWS Management Console e abra o console do AWS Key Management Service () em AWS KMShttps://console.aws.amazon.com/kms.

  2. Para alterar a região da AWS, use o Region selector (Seletor de regiões) no canto superior direito da página.

  3. No painel de navegação, escolha Customer managed keys (Chaves gerenciadas de cliente). (Não é possível habilitar ou desabilitar a alternância de Chaves gerenciadas pela AWS . Elas são alternadas automaticamente de três em três anos.)

  4. Escolha o alias ou ID de chave de uma chave do KMS.

  5. Selecione a guia Key rotation (Rotação de chaves).

    A guia Key rotation (Alternância de chaves) é exibida na página de detalhes de chaves do KMS simétricas com material de chave gerado pelo AWS KMS, cuja Origin (Origem) é AWS_KMS. Não é possível alternar automaticamente, chaves do KMS assimétricas, chaves do KMS com material de chave importado nem chaves do KMS em armazenamentos de chave personalizados. No entanto, é possível alterná-las manualmente.

  6. Marque ou desmarque a caixa de seleção Automatically rotate this KMS key every year (Alternar esta chave do KMS automaticamente todos os anos).

    nota

    Se uma chave do KMS estiver desabilitada ou com exclusão pendente, a caixa de seleção Automatically rotate this KMS key every year (Alternar esta chave do KMS automaticamente todos os anos) estará vazia, e você não pode alterá-la. O status da alternância de chaves é restaurado quando você habilita a chave do KMS ou cancela a exclusão. Para obter mais detalhes, consulte Como funciona a alternância de chaves automática e Estado da chave: Efeito na sua chave do KMS.

  7. Escolha Save (Salvar).

Habilitar e desabilitar a alternância de chaves (API do AWS KMS)

Você pode usar a API do AWS Key Management Service (AWS KMS) API para habilitar e desabilitar a alternância automática de chaves e visualizar o status atual da alternância de qualquer chave gerenciada pelo cliente. Estes exemplos usam a AWS Command Line Interface (AWS CLI), mas você pode usar qualquer linguagem de programação compatível.

A operação EnableKeyRotation habilita a alternância de chaves automática para a chave do KMS especificada. A operação DisableKeyRotation a desativa. Para identificar a chave do KMS nessas operações, use seu ID de chave ou ARN de chave. Por padrão, a mudança de chaves está desabilitada nas chaves gerenciadas de cliente.

O exemplo a seguir habilita a alternância de chaves na chave do KMS simétrica especificada e usa a operação GetKeyRotationStatus para ver o resultado. Ele desabilita a alternância de chaves e, novamente, usa GetKeyRotationStatus para ver a alteração.

$ aws kms enable-key-rotation --key-id 1234abcd-12ab-34cd-56ef-1234567890ab $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyRotationEnabled": true } $ aws kms disable-key-rotation --key-id 1234abcd-12ab-34cd-56ef-1234567890ab $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyRotationEnabled": false }

Alterar chaves manualmente

Talvez você queira criar uma nova chave do KMS e usá-la no lugar de uma chave do KMS atual, em vez de habilitar a alternância de chaves automática. Quando a nova chave do KMS tem material criptográfico diferente daquele da chave do KMS atual, usar a nova chave do KMS tem o mesmo efeito de alterar o material de chave em uma chave do KMS existente. O processo de substituir uma chave do KMS por outra é conhecido como alternância manual de chaves.

Você pode preferir alternar as chaves manualmente, para controlar a frequência da mudança. Isso também é uma boa solução para chaves do KMS que não estão qualificadas para alternância automática de chaves, como chaves do KMS assimétricas, chaves do KMS em armazenamentos de chaves personalizados e chaves do KMS com material de chave importado.

nota

Quando você começar a usar a nova chave do KMS, mantenha a chave do KMS original habilitada para que o AWS KMS possa descriptografar os dados que a chave do KMS original criptografou.

Como a nova chave do KMS é um recurso diferente da chave do KMS atual, ela tem um ARN e um ID de chave diferentes. Ao alterar as chaves do KMS, você precisa atualizar as referências ao ARN e ao ID da chave do KMS nas suas aplicações. Aliases, que associam um nome amigável a uma chave do KMS, tornam esse processo mais fácil. Use um alias para fazer referência a uma chave do KMS em suas aplicações. Quando quiser alterar a chave do KMS utilizada pela aplicação, altere a chave do KMS de destino do alias. Para obter mais detalhes, consulte Usar aliases em suas aplicações.

Para atualizar a chave do KMS de destino de um alias, use a operação UpdateAlias na API do AWS KMS. Por exemplo, este comando atualiza o alias TestKey para apontar para uma nova chave do KMS. Como a operação não retorna uma saída, o exemplo usa a operação ListAliases para mostrar que o alias agora está associado a uma chave do KMS diferente e que o campo LastUpdatedDate está atualizado.

$ aws kms list-aliases { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestKey", "AliasName": "alias/TestKey", "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1521097200.123, "LastUpdatedDate": 1521097200.123 }, ] } $ aws kms update-alias --alias-name alias/TestKey --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321 $ aws kms list-aliases { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestKey", "AliasName": "alias/TestKey", "TargetKeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1521097200.123, "LastUpdatedDate": 1604958290.722 }, ] }