Configurar a alternância de usuário único para o 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á.

Configurar a alternância de usuário único para o AWS Secrets Manager

Neste tutorial, você aprenderá como configurar a alternância de usuário único para um segredo que contenha credenciais de banco de dados. Alternância de usuário único é uma estratégia de alternância na qual o Secrets Manager atualiza as credenciais de um usuário no segredo e no banco de dados. Para ter mais informações, consulte Estratégia de alternância: usuário único.

Depois de concluir o tutorial, recomendamos limpar os recursos do tutorial. Não os use em um ambiente de produção.

A alternância do Secrets Manager usa uma função do AWS Lambda para atualizar o segredo e o banco de dados. Para obter mais informações sobre os custos do uso de uma função do Lambda, consulte Definição de preço.

Permissões

Para os pré-requisitos do tutorial, você precisa de permissões administrativas para sua Conta da AWS. Em uma configuração de produção, é uma prática recomendada usar funções diferentes para cada uma das etapas. Por exemplo, uma função com permissões de administrador de banco de dados criaria o banco de dados do Amazon RDS, e uma função com permissões de administrador de rede configuraria a VPC e os grupos de segurança. Para as etapas do tutorial, recomendamos que você continue usando a mesma identidade.

Para obter mais informações sobre como configurar permissões em um ambiente de produção, consulte Autenticação e controle de acesso para o AWS Secrets Manager.

Pré-requisitos

O pré-requisito para este tutorial é Configurar alternância de usuários alternados para o AWS Secrets Manager. Não limpe os recursos no final do primeiro tutorial. Depois desse tutorial, você tem um ambiente realista com um banco de dados do Amazon RDS e um segredo do Secrets Manager que contém credenciais de administrador para o banco de dados. Você também tem um segundo segredo que contém credenciais para um usuário do banco de dados, mas você não usa esse segredo neste tutorial.

Você também tem uma conexão configurada no MySQL Workbench para se conectar ao banco de dados com as credenciais de administrador.

Etapa 1: criar um usuário do banco de dados do Amazon RDS

Primeiro, você precisa de um usuário cujas credenciais serão armazenadas no segredo. Para criar o usuário, faça login no banco de dados do Amazon RDS com credenciais de administrador que são armazenadas em um segredo. Para simplificar, no tutorial, você cria um usuário com permissão total para um banco de dados. Em um ambiente de produção, isso não é típico. Recomendamos que você siga o princípio de privilégio mínimo.

Para recuperar a senha do administrador
  1. No Console do Amazon RDS, navegue até o seu banco de dados.

  2. Na guia Configuration (Configuração), em Master Credentials ARN (ARN das credenciais principais), escolha Manage in Secrets Manager (Gerenciar no Secrets Manager).

    O Console do Secrets Manager é aberto.

  3. Na página de detalhes do seu segredo, escolha Retrieve secret value (Recuperar valor do segredo).

  4. A senha aparece na seção Secret value (Valor do segredo).

Para criar um usuário de banco de dados
  1. No MySQL Workbench, clique com o botão direito do mouse na conexão SecretsManagerTutorial e, depois, escolha Edit Connection (Editar conexão).

  2. Na caixa de diálogo Manage Server Connections (Gerenciar conexões do servidor), em Username (Nome do usuário), insira admin e, depois, escolha Close (Fechar).

  3. De volta ao MySQL Workbench, escolha a conexão SecretsManagerTutorial.

  4. Digite a senha de administrador que você recuperou do segredo.

  5. Em MySQL Workbench, na janela Query (Consultar), insira os seguintes comandos (incluindo uma senha forte) e, depois, escolha Execute (Executar). A função de alternância testa o segredo atualizado usando SELECT, portanto, dbuser deve ter esse privilégio, no mínimo.

    CREATE USER 'dbuser'@'%' IDENTIFIED BY 'EXAMPLE-PASSWORD'; GRANT SELECT ON myDB . * TO 'dbuser'@'%';

    Na janela Output (Saída), você verá os comandos com êxito.

Etapa 2: criar um segredo para as credenciais do usuário do banco de dados

Em seguida, crie um segredo para armazenar as credenciais do usuário que acabou de criar e ative a alternância automática, incluindo uma alternância imediata. O Secrets Manager alterna o segredo, o que significa que a senha é gerada programaticamente, ou seja, nenhum ser humano viu essa nova senha. O início imediato da alternância também pode ajudar a determinar se a alternância está configurada corretamente.

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

  2. Selecione Armazenar um novo segredo.

  3. Na página Choose secret type (Selecionar tipo de segredo), faça o seguinte:

    1. Em Secret type (Tipo de segredo), escolha Credentials for Amazon RDS database (Credenciais para o banco de dados do Amazon RDS).

    2. Em Credentials (Credenciais), insira o nome do usuário dbuser e a senha inserida para o usuário do banco de dados que você criou usando o MySQL Workbench.

    3. Em Database (Banco de dados), escolha secretsmanagertutorialdb.

    4. Escolha Próximo.

  4. Na página Configure secret (Configurar segredo) , em Secret name (Nome de segredo), insira SecretsManagerTutorialDbuser e, depois, escolha Next (Próximo).

  5. Na página Configure rotation (Configurar alternância), faça o seguinte:

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

    2. Em Rotation schedule (Programação da alternância), defina uma programação de Days (Dias):2 dias com Duration (Duração): 2h. Mantenha Rotate immediately (Alternar imediatamente) selecionado.

    3. Em Rotation function (Função de alternância), escolha Create a rotation function (Criar uma função de alternância), e, em seguida, para nome da função, insira tutorial-single-user-rotation.

    4. Em Estratégia de alternância, escolha Usuário único.

    5. Escolha Próximo.

  6. Na página Review (Análise), escolha Store (Armazenar).

    O Secrets Manager retorna à página de detalhes do segredo. Na parte superior da página, você pode ver o status da configuração de alternância. O Secrets Manager usa o CloudFormation para criar recursos como a função de alternância do Lambda e uma função de execução que executa a função Lambda. Quando o CloudFormation termina, o banner muda para Secret scheduled for rotation (Segredo programado para alternância). A primeira alternância está completa.

Etapa 3: testar a senha alternada

Após a primeira alternância de segredo, que pode levar alguns segundos, você pode verificar se o segredo ainda contém credenciais válidas. A senha no segredo mudou a partir das credenciais originais.

Para recuperar a nova senha do segredo
  1. Abra o console do Secrets Manager em https://console.aws.amazon.com/secretsmanager/.

  2. Escolha Secrets (Segredos) e, em seguida, escolha o segredo SecretsManagerTutorialDbuser.

  3. Na página Secret details (Detalhes do segredo), role para baixo e escolha Retrieve secret value (Recuperar valor do segredo).

  4. Na tabela Key/value (Chave/valor), copie o Secret value (Valor do segredo) para password.

Para testar as credenciais
  1. No MySQL Workbench, clique com o botão direito do mouse na conexão SecretsManagerTutorial e, depois, escolha Edit Connection (Editar conexão).

  2. Na caixa de diálogo Manage Server Connections (Gerenciar conexões do servidor), em Username (Nome do usuário), insira dbuser e, depois, escolha Close (Fechar).

  3. De volta ao MySQL Workbench, escolha a conexão SecretsManagerTutorial.

  4. Na caixa de diálogo Open SSH Connection (Abrir conexão de SSH), em Password (Senha), cole a senha que você recuperou do segredo e escolha OK.

    Se as credenciais forem válidas, o MySQL Workbench será aberto na página de design do banco de dados.

Etapa 4: Limpar os recursos

Para evitar possíveis cobranças, exclua o segredo que você criou neste tutorial. Para obter instruções, consulte Exclusão de um segredo do AWS Secrets Manager.

Para limpar os recursos criados no tutorial anterior, consulte Etapa 4: Limpar os recursos.

Próximas etapas