

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á.

# Configure a rotação de um único usuário para AWS Secrets Manager
<a name="tutorials_rotation-single"></a>

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 obter mais informações, consulte [Estratégia de alternância: usuário único](rotation-strategy.md#rotating-secrets-one-user-one-password). 

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

A rotação do Secrets Manager usa uma AWS Lambda função 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 [Preços](intro.md#asm_pricing).

**Contents**
+ [Permissões](#tutorials_rotation-single_permissions)
+ [Pré-requisitos](#tutorials_rotation-single_step-setup)
+ [Etapa 1: criar um usuário do banco de dados do Amazon RDS](#tutorials_rotation-single_step-dbuser)
+ [Etapa 2: criar um segredo para as credenciais do usuário do banco de dados](#tutorials_rotation-single_step-rotate)
+ [Etapa 3: testar a senha alternada](#tutorials_rotation-single_step-connect-again)
+ [Etapa 4: Limpar os recursos](#tutorials_rotation-single_step-cleanup)
+ [Próximas etapas](#tutorials_rotation-single_step-next)

## Permissões
<a name="tutorials_rotation-single_permissions"></a>

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 AWS Secrets Manager](auth-and-access.md).

## Pré-requisitos
<a name="tutorials_rotation-single_step-setup"></a>

O pré-requisito para este tutorial é [Configure a rotação alternada de usuários para AWS Secrets Manager](tutorials_rotation-alternating.md). 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
<a name="tutorials_rotation-single_step-dbuser"></a>

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.

1. 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.

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

1. 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 escolha Editar conexão.**

1. 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).

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

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

1.  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
<a name="tutorials_rotation-single_step-rotate"></a>

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 do Secrets Manager em [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Selecione **Armazenar um novo segredo**.

1. 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).

   1. 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.

   1. Em **Database** (Banco de dados), escolha **secretsmanagertutorialdb**.

   1. Escolha **Próximo**.

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

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

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

   1. 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. 

   1. 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**.

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

   1. Escolha **Próximo**.

1. 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, é possível ver o status da configuração de alternância. O Secrets Manager usa CloudFormation para criar recursos como a função de rotação Lambda e uma função de execução que executa a função Lambda. Quando CloudFormation terminar, o banner muda para **Segredo programado para rotação**. A primeira alternância está completa.

## Etapa 3: testar a senha alternada
<a name="tutorials_rotation-single_step-connect-again"></a>

Após a primeira alternância de segredo, que pode levar alguns segundos, é possível 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/](https://console.aws.amazon.com/secretsmanager/).

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

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

1. 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 escolha Editar conexão.**

1. 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).

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

1. 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
<a name="tutorials_rotation-single_step-cleanup"></a>

Para evitar possíveis cobranças, exclua o segredo que você criou neste tutorial. Para instruções, consulte [Excluir um AWS Secrets Manager segredo](manage_delete-secret.md).

Para limpar os recursos criados no tutorial anterior, consulte [Etapa 4: limpar os recursos](tutorials_rotation-alternating.md#tutorials_rotation-alternating_step-cleanup).

## Próximas etapas
<a name="tutorials_rotation-single_step-next"></a>
+ Saiba como recuperar segredos em suas aplicações. Consulte [Obtenha segredos de AWS Secrets Manager](retrieving-secrets.md).
+ Saiba mais sobre outras programações de alternância. Consulte [Programação de alternância](rotate-secrets_schedule.md).