Altere a chave de criptografia de um segredo AWS Secrets Manager - AWS Secrets Manager

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Altere a chave de criptografia de um segredo AWS Secrets Manager

O Secrets Manager usa criptografia envelopada com chaves do AWS KMS e chaves de dados para proteger o valor de cada segredo. Para cada segredo, você pode escolher qual chave KMS usar. É possível usar o Chave gerenciada pela AWS aws/secretsmanager, ou você ainda pode usar uma chave gerenciada pelo cliente. Na maioria dos casos, recomendamos usar aws/secretsmanager, e não há custo para usá-la. Se você precisar acessar o segredo de outra Conta da AWS, ou se quiser usar sua própria chave KMS para que você possa rotacioná-la ou aplicar uma política de chave, use um chave gerenciada pelo cliente. É necessário ter Permissões para a chave do KMS. Para obter mais informações sobre os custos do uso de uma chave gerenciada pelo cliente, consulte Definição de preço.

É possível alterar a chave de criptografia de um segredo. Por exemplo, se você quiser acessar o segredo de outra conta e o segredo estiver atualmente criptografado usando a chave AWS gerenciada aws/secretsmanager, você pode mudar para uma chave gerenciada pelo cliente.

dica

Se você quiser alternar seu chave gerenciada pelo cliente, recomendamos usar a rotação AWS KMS automática de chaves. Para obter mais informações sobre como alternar AWS KMS chaves.

Quando você altera a chave de criptografia, o Secrets Manager criptografa novamente as versões AWSCURRENT, AWSPENDING e AWSPREVIOUS com a nova chave. Para evitar que você fique bloqueado sem o segredo, o Secrets Manager mantém todas as versões existentes criptografadas com a chave anterior. Isso significa que é possível descriptografar as versões AWSCURRENT, AWSPENDING e AWSPREVIOUS com a chave anterior ou com a nova chave. Se você não tiver a permissão kms:Decrypt para a chave anterior, ao alterar a chave de criptografia, o Secrets Manager não poderá descriptografar as versões do segredo para recriptografá-las. Nesse caso, as versões existentes não serão criptografadas novamente.

Para fazer com que AWSCURRENT só possa ser descriptografado pela nova chave de criptografia, crie uma nova versão do segredo com a nova chave. Em seguida, para poder decifrar a versão do segredo AWSCURRENT, você deverá ter permissão para a nova chave.

Se você desativar a chave de criptografia anterior, não poderá descriptografar nenhuma versão secreta, exceto AWSCURRENT, AWSPENDING e AWSPREVIOUS. Se você tiver outras versões secretas rotuladas às quais deseja manter o acesso, precisará recriar essas versões com a nova chave de criptografia usando o AWS CLI.

Para alterar a chave de criptografia de um segredo (console)
  1. Abra o console do Secrets Manager em https://console.aws.amazon.com/secretsmanager/.

  2. Na lista de segredos, escolha o segredo.

  3. Na página de detalhes do segredo, na seção Secrets details (Detalhes dos segredos), selecione Actions (Ações) e, em seguida, selecione Edit encryption key (Editar chave de criptografia).

AWS CLI

Se você alterar a chave de criptografia de um segredo e, em seguida, desativar a chave de criptografia anterior, você não conseguirá descriptografar nenhuma versão do segredo, exceto AWSCURRENT, AWSPENDING e AWSPREVIOUS. Se você tiver outras versões secretas rotuladas às quais deseja manter o acesso, precisará recriar essas versões com a nova chave de criptografia usando o AWS CLI.

Para alterar a chave de criptografia de um segredo, consulte (AWS CLI)
  1. O exemplo de update-secret a seguir atualiza a chave do KMS usada para criptografar o valor do segredo. A chave do KMS precisa estar na mesma do segredo.

    aws secretsmanager update-secret \ --secret-id MyTestSecret \ --kms-key-id arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
  2. (Opcional) Se você tiver versões de segredos com rótulos personalizados, para recriptografá-las usando a nova chave, será necessário recriar essas versões.

    Quando você insere comandos em um shell de comando, existe o risco de o histórico de comandos ser acessado ou de utilitários terem acesso aos seus parâmetros de comando. Consulte Mitigação de riscos do uso da AWS CLI para armazenar segredos do AWS Secrets Manager.

    1. Obtenha o valor da versão secreta.

      aws secretsmanager get-secret-value \ --secret-id MyTestSecret \ --version-stage MyCustomLabel

      Anote o valor do segredo.

    2. Crie uma nova versão com esse valor.

      aws secretsmanager put-secret-value \ --secret-id testDescriptionUpdate \ --secret-string "SecretValue" \ --version-stages "MyCustomLabel"