Comment effectuer la rotation d'un secret AWS Secrets Manager pour une connexion à la base de données qui nécessite SSL ?

Dernière mise à jour : 11/04/2022

Ma fonction de rotation AWS Secrets Manager ne peut pas se connecter à une instance Amazon Relational Database Service (Amazon RDS) avec Secure Socket Layer (SSL). Je reçois un message d'erreur similaire à celui-ci :

«: setSecret: impossible de se connecter à la base de données avec le secret de secret précédent, actuel ou en attente »

Solution

Les fonctions de rotation pour Amazon RDS (sauf Amazon RDS for Oracle) et Amazon DocumentDB utilisent automatiquement SSL/TLS pour se connecter à votre base de données si elle est disponible. Si SSL ou TLS n'est pas disponible, les fonctions de rotation utilisent une connexion non chiffrée.

Si vous avez configuré la rotation des secrets avant le 20 décembre 2021, votre fonction de rotation peut être basée sur un ancien modèle ne prenant pas en charge les protocoles SSL/TLS. Afin de prendre en charge les connexions utilisant les protocoles SSL/TLS, vous devez recréer votre fonction de rotation. Pour plus d'informations, veuillez consulter la section Ma base de données nécessite une connexion SSL/TLS, mais la fonction de rotation AWS Lambda n'utilise pas les protocoles SSL/TLS.

Vérifiez la connexion à la base de données de votre utilisateur de base de données et récupérez le secret

1.    Pour vous connecter à votre instance Amazon RDS, consultez Connexion à une instance de base de données Amazon RDS.

2.    Pour connecter votre Amazon DocumentDB, consultez Développement avec Amazon DocumentDB.

3.    Pour récupérer le secret, consultez Récupération de secrets depuis AWS Secrets Manager dans le code.

4.    Pour effectuer une rotation automatique du secret, consultez Rotation automatique d'un secret Amazon RDS, Amazon DocumentDB ou Amazon Redshift.