Alternar automaticamente um segredo - AWS Secrets Manager

Alternar automaticamente um segredo

O Secrets Manager fornece modelos completos de alternância para segredos do Amazon RDS, do Amazon DocumentDB e do Amazon Redshift. Para mais informações, consulte Alternar automaticamente um segredo do Amazon RDS, do Amazon DocumentDB e do Amazon Redshift.

Para outros tipos de segredos, você cria sua própria função de alternância. O Secrets Manager fornece um Outros tipos de segredo que você pode usar como ponto de partida. Se você usar o console do Secrets Manager ou o console do AWS Serverless Application Repository para criar a função a partir do modelo, a função de execução do Lambda também é configurada automaticamente.

Outra maneira de alternar automaticamente um segredo é usar o AWS CloudFormation para criar o segredo e incluir o AWS::SecretsManager::RotationSchedule. Consulte Automatizar a criação de segredos no AWS CloudFormation.

Antes de começar, você precisa do seguinte:

  • Um segredo com as informações que você deseja alternar, por exemplo, credenciais para um usuário de um banco de dados ou serviço.

Para ativar a alternância (console)

  1. Abra o console do Secrets Manager em https://console.aws.amazon.com/secretsmanager/.

  2. Na página Secrets (Segredos), escolha o segredo.

  3. Na página Secret details (Detalhes do segredo), na seção Rotation configuration (Configuração da alternância), escolha Edit rotation (Editar alternância). A caixa de diálogo Edit rotation configuration (Editar configuração de alternância) se abre. Faça o seguinte:

    1. Ative a Automatic rotation (Alternância automática).

    2. Em Rotation schedule (Programação de alternância), insira a sua programação no fuso horário UTC fazendo o seguinte:

      • Escolha Schedule expression builder (Programar construtor de expressões) para criar uma programação em um formulário. O Secrets Manager armazena a sua programação como uma expressão rate() ou cron(). A janela de alternância começa automaticamente à 0h, a menos que você especifique um horário de início.

      • Escolha Schedule expression (Programar expressão) e, em seguida, execute uma das seguintes ações:

        • Insira a expressão cron em sua agenda. Por exemplo, cron(0 21 L * ? *), que alterna o segredo no último dia de cada mês às 21h UTC+0. Uma expressão cron para o Secrets Manager deve ter 0 no campo de minutos porque as janelas de alternância do Secrets Manager abrem no horário indicado. É necessário que um * esteja no campo de ano, porque o Secrets Manager não oferece suporte a cronogramas de alternância com mais de um ano de intervalo. Para mais informações, consulte Programar expressões.

        • Insira uma expressão de taxa para uma taxa diária, por exemplo, rate(10 days), que alterna o segredo a cada dez dias. A expressão deve incluir rate(). Com uma expressão de taxa, a janela de alternância começa automaticamente à 0h.

    3. (Opcional) Em Window duration (Duração da janela), escolha a duração da janela em que deseja que o Secrets Manager alterne o seu segredo, por exemplo, 3h, por uma janela de três horas. A janela não deve se estender até o próximo dia UTC. A janela de alternância termina automaticamente no final do dia se você não especificar a duração da janela.

    4. Em Rotation function (Função de alternância), execute uma das ações a seguir:

      1. Se você já criou uma função de alternância para esse tipo de segredo, escolha-a.

      2. Do contrário, escolha Create function (Criar função). No console do Lambda, crie a nova função de alternância. Se vir a opção Browse serverless app repository (Navegar pelo repositório de aplicações sem servidor), selecione-a e escolha Show apps that create custom IAM roles or resource policies (Mostrar aplicações que criam políticas de recursos ou funções do IAM personalizadas) e depois selecione SecretsManagerRotationTemplate. Caso contrário, escolha Author from scratch (Criar do zero) e use o Outros tipos de segredo como ponto de partida para a função. Implemente cada uma das etapas descritas em Como o funciona a alternância.

        Quando sua função estiver concluída, volte ao console do Secrets Manager para finalizar seu segredo. Para Choose a Lambda function (Escolha uma função do Lambda), escolha o botão de atualização. Na lista de funções, escolha a sua nova função.

    5. Escolha Save (Salvar).

Para resolver problemas comuns de alternância, consulte Solução de problemas de alternância de segredos do AWS Secrets Manager.

AWS SDK e AWS CLI

Para ativar a alternância, consulte rotate-secret.

AWS SDK

Para ativar a alternância, use a ação RotateSecret (Alternar segredo). Para mais informações, consulte AWS SDKs.