

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Configurez la rotation pour un seul utilisateur pour AWS Secrets Manager
<a name="tutorials_rotation-single"></a>

Dans ce didacticiel, vous apprendrez comment configurer la rotation d'un utilisateur unique pour un secret contenant les informations d'identification d'administrateur de base de données. La *rotation utilisateur unique* est une stratégie de rotation dans laquelle Secrets Manager met à jour les informations d'identification d'un utilisateur dans le secret et dans la base de données. Pour de plus amples informations, veuillez consulter [Stratégie de rotation : utilisateur unique](rotation-strategy.md#rotating-secrets-one-user-one-password). 

Une fois le didacticiel terminé, nous vous recommandons d'en nettoyer les ressources. Ne les utilisez pas dans un environnement de production.

La rotation de Secrets Manager utilise une AWS Lambda fonction pour mettre à jour le secret et la base de données. Pour plus d'informations sur les coûts d'utilisation d'une fonction Lambda, consultez [Tarification](intro.md#asm_pricing).

**Contents**
+ [Permissions](#tutorials_rotation-single_permissions)
+ [Conditions préalables](#tutorials_rotation-single_step-setup)
+ [Étape 1 : créer un utilisateur de base de données Amazon RDS](#tutorials_rotation-single_step-dbuser)
+ [Étape 2 : créez un secret pour les informations d’identification de l'utilisateur](#tutorials_rotation-single_step-rotate)
+ [Étape 3 : tester le mot de passe ayant subi la rotation](#tutorials_rotation-single_step-connect-again)
+ [Étape 4 : Nettoyer les ressources](#tutorials_rotation-single_step-cleanup)
+ [Étapes suivantes](#tutorials_rotation-single_step-next)

## Permissions
<a name="tutorials_rotation-single_permissions"></a>

Pour les prérequis du tutoriel, vous devez disposer d'autorisations administratives sur votre Compte AWS. Dans un contexte de production, une bonne pratique est d'utiliser différents rôles pour chacune des étapes. Par exemple, un rôle doté d'autorisations d'administrateur de base de données créerait la base de données Amazon RDS, et un rôle doté d'autorisations d'administrateur réseau configurerait le VPC et les groupes de sécurité. Pour les étapes du tutoriel, nous vous recommandons de continuer à utiliser la même identité.

Pour plus d'informations sur la façon de configurer les autorisations dans un environnement de production, consultez [Authentification et contrôle d'accès pour AWS Secrets Manager](auth-and-access.md).

## Conditions préalables
<a name="tutorials_rotation-single_step-setup"></a>

La condition préalable à ce tutoriel est : [Configurez la rotation alternée des utilisateurs pour AWS Secrets Manager](tutorials_rotation-alternating.md). Ne nettoyez pas les ressources à la fin du premier tutoriel. Après ce didacticiel, vous disposez d'un environnement réaliste avec une base de données Amazon RDS et un secret Secrets Manager qui contient des informations d'identification admin pour la base de données. Vous disposez également d'un second secret qui contient les informations d’identification d'un utilisateur de base de données, mais vous n'utiliserez pas ce secret dans ce didacticiel.

Vous disposez également d'une connexion configurée dans MySQL Workbench pour vous connecter à la base de données avec les informations d'identification d'administrateur.

## Étape 1 : créer un utilisateur de base de données Amazon RDS
<a name="tutorials_rotation-single_step-dbuser"></a>

Tout d'abord, vous avez besoin d'un utilisateur dont les informations d'identification seront stockées dans le secret. Pour créer l'utilisateur, connectez-vous à la base de données Amazon RDS à l'aide des informations d’identification d'administrateur stockées dans un secret. Pour des raisons de simplicité, dans le didacticiel, vous allez créer un utilisateur avec des autorisations complètes sur une base de données. Dans un environnement de production, ce n'est pas courant et nous vous recommandons de respecter le principe du moindre privilège.

**Pour récupérer le mot de passe administrateur**

1. Dans la console Amazon RDS, accédez à votre base de données.

1. Dans l'onglet **Configuration**, sous **Master Credentials ARN**, choisissez **Gérer dans Secrets Manager**.

   La console Secrets Manager s’ouvre.

1. Sur la page de détails de votre secret, sélectionnez **Retrieve secret value** (Récupérer la valeur du secret).

1. Le mot de passe apparaît dans la section **Valeur secrète**.

**Pour créer un utilisateur de base de données**

1. Dans MySQL Workbench, cliquez avec le bouton droit sur la connexion, **SecretsManagerTutorial**puis choisissez **Modifier la connexion**.

1. Dans la boite de dialogue **Manage Server Connections** (Gérer les connexions aux serveurs), pour **Username** (Nom d'utilisateur), saisissez **admin**, puis choisissez **Close** (Fermer).

1. De retour dans MySQL Workbench, choisissez la connexion **SecretsManagerTutorial**.

1. Saisissez le mot de passe administrateur que vous avez récupéré dans le secret. 

1.  Dans le MySQL Workbench, dans la fenêtre **Query** (Requête), saisissez les commandes suivantes (y compris un mot de passe fort), puis choisissez **Execute** (Exécuter). La fonction de rotation teste le secret mis à jour à l'aide de SELECT, de sorte qu'ils **dbuser** doivent avoir ce privilège au minimum.

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

   Dans la fenêtre **Output** (Sortie), vous voyez que les commandes sont réussies.

## Étape 2 : créez un secret pour les informations d’identification de l'utilisateur
<a name="tutorials_rotation-single_step-rotate"></a>

Ensuite, vous créez un secret pour stocker les informations d’identification de l'utilisateur que vous venez de créer, et vous activez la rotation automatique, y compris une rotation immédiate. Secrets Manager fait pivoter le secret, ce qui signifie que le mot de passe est généré par programmation. Aucun humain n'a vu ce nouveau mot de passe. Le fait que la rotation commence immédiatement peut également vous aider à déterminer si la rotation est correctement configurée.

1. Ouvrez la console Secrets Manager à l'adresse [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Choisissez **Store a new secret** (Stocker un nouveau secret).

1. Sur la page **Choose secret type** (Choisir un type de secret), procédez comme suit :

   1. Pour **Secret type** (Type de secret), choisissez **Credentials for Amazon RDS database** (Informations d'identification pour une base de données Amazon RDS).

   1. Pour **Credentials** (Informations d'identification), saisissez le nom d'utilisateur **dbuser** et le mot de passe que vous avez entrés pour l'utilisateur de base de données que vous avez créé à l'aide de MySQL Workbench.

   1. Pour **Database** (Base de données), choisissez **secretsmanagertutorialdb**.

   1. Choisissez **Suivant**.

1. Sur la page **Configure secret** (Configurer le secret), pour **Secret name** (Nom du secret), saisissez **SecretsManagerTutorialDbuser** puis choisissez **Next** (Suivant).

1. Sur la page **Configure rotation** (Configuration de la rotation), procédez comme suit :

   1. Activez **Automatic rotation** (Rotation automatique).

   1. Pour **Rotation schedule** (Calendrier de rotation), définissez un calendrier de **Days** (Jours) : **2** Jours avec une **Duration** (Durée) :**2h**. Gardez **Rotate immediately** (Rotation immédiate) sélectionné. 

   1. Pour **Rotation function** (Fonction de rotation), choisissez **Create a rotation function** (Créer une fonction de rotation), puis pour le nom de la fonction, saisissez **tutorial-single-user-rotation**.

   1. Pour **Stratégie de rotation**, choisissez **Utilisateur unique**.

   1. Choisissez **Suivant**.

1. Sur la page **Review** (Vérification), choisissez **Store** (Stocker).

   Secrets Manager revient à la page des détails du secret. En haut de la page, vous pouvez voir l'état de la configuration de rotation. Secrets Manager permet CloudFormation de créer des ressources telles que la fonction de rotation Lambda et un rôle d'exécution qui exécute la fonction Lambda. Lorsque vous CloudFormation avez terminé, la bannière devient « **Secret », dont la rotation est planifiée**. La première rotation est configurée.

## Étape 3 : tester le mot de passe ayant subi la rotation
<a name="tutorials_rotation-single_step-connect-again"></a>

Après la première rotation du secret, qui peut prendre quelques secondes, vous pouvez vérifier que le secret contient toujours des informations d'identification valides. Le mot de passe dans le secret a changé par rapport aux informations d'identification d'origine.

**Pour récupérer le nouveau mot de passe du secret**

1. Ouvrez la console Secrets Manager à l'adresse [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Choisissez **Secrets**, puis choisissez le secret **SecretsManagerTutorialDbuser**.

1. Sur la page **Secret details** (Détails secrets), faites défiler l'écran vers le bas et choisissez **Retrieve secret value** (Récupération d'une valeur de secret).

1. Dans le tableau **Key/value** (Clé/Valeur), copiez la **Secret value** (Valeur de secret) pour **password**.

**Pour tester les informations d'identification**

1. Dans MySQL Workbench, cliquez avec le bouton droit sur la connexion, **SecretsManagerTutorial**puis choisissez **Modifier la connexion**.

1. Dans la boite de dialogue **Manage Server Connections** (Gérer les connexions aux serveurs), pour **Username** (Nom d'utilisateur), saisissez **dbuser**, puis choisissez **Close** (Fermer).

1. De retour dans MySQL Workbench, choisissez la connexion **SecretsManagerTutorial**.

1. Dans la boite de dialogue **Open SSH Connection** (Connexion SSH ouverte), pour **Password** (Mot de passe), collez le mot de passe que vous avez récupéré dans le secret, puis choisissez **OK.**.

   Si les informations d'identification sont valides, MySQL Workbench s'ouvre sur la page de conception de la base de données.

## Étape 4 : Nettoyer les ressources
<a name="tutorials_rotation-single_step-cleanup"></a>

Pour éviter des frais potentiels, supprimez le secret que vous avez créé dans ce tutoriel. Pour obtenir des instructions, veuillez consulter [Supprimer un AWS Secrets Manager secret](manage_delete-secret.md).

Pour nettoyer les ressources créées dans le didacticiel précédent, consultez [Étape 4 : Nettoyer les ressources](tutorials_rotation-alternating.md#tutorials_rotation-alternating_step-cleanup).

## Étapes suivantes
<a name="tutorials_rotation-single_step-next"></a>
+ Découvrez comment récupérer les secrets de vos applications. Consultez [Obtenez des secrets auprès de AWS Secrets Manager](retrieving-secrets.md).
+ Découvrez d'autres calendriers de rotation. Consultez [Horaires de rotation](rotate-secrets_schedule.md).