Rotation de votre TLS certificatSSL/ - Amazon Relational Database Service

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.

Rotation de votre TLS certificatSSL/

Les certificats RDS-CA-2019 de l'autorité de RDS certification Amazon expireront en août 2024. Si vous utilisez ou prévoyez d'utiliser Secure Sockets Layer (SSL) ou Transport Layer Security (TLS) avec vérification des certificats pour vous connecter à vos instances de base de données ou à vos clusters de RDS bases de données multi-AZ, pensez à utiliser l'un des nouveaux certificats CA rds-ca-rsa 2048-g1, rds-ca-rsa 4096-g1 ou 384-g1. rds-ca-ecc Si vous n'utilisez pas actuellementSSL/TLSavec la vérification des certificats, il se peut que votre certificat d'autorité de certification ait expiré et que vous deviez le remplacer par un nouveau certificat d'autorité de certification si vous envisagez d'utiliserSSL/TLSavec la vérification des certificats pour vous connecter à vos RDS bases de données.

Amazon RDS fournit de nouveaux certificats CA en tant que AWS meilleures pratiques en matière de sécurité. Pour plus d'informations sur les nouveaux certificats et les certificats pris en charge AWS Régions, voir.

Pour mettre à jour le certificat CA de votre base de données, appliquez les méthodes suivantes :

Avant de mettre à jour vos instances de base de données ou vos clusters de base de données multi-AZ pour utiliser le nouveau certificat CA, assurez-vous de mettre à jour vos clients ou applications qui se connectent à vos RDS bases de données.

Considérations relatives à la rotation des certificats

Tenez compte des situations suivantes avant de procéder à la rotation de votre certificat :

  • Amazon RDS Proxy utilise les certificats du AWS Certificate Manager (ACM). Si vous utilisez un RDS proxy, lorsque vous faites pivoter votre TLS certificatSSL/, vous n'avez pas besoin de mettre à jour les applications qui utilisent des connexions RDS proxy. Pour de plus amples informations, veuillez consulter UtiliserTLS/SSLavec un RDS proxy.

  • Si vous utilisez une application Go version 1.15 avec une instance de base de données ou un cluster de base de données multi-AZ créé ou mis à jour vers le certificat rds-ca-2019 avant le 28 juillet 2020, vous devez à nouveau mettre à jour le certificat.

    Utilisez la modify-db-instance commande pour une instance de base de données ou la modify-db-cluster commande pour un cluster de base de données multi-AZ, en utilisant le nouvel identifiant de certificat CA. Vous pouvez trouver ceux CAs qui sont disponibles pour un moteur de base de données et une version de moteur de base de données spécifiques à l'aide de la describe-db-engine-versions commande.

    Si vous avez créé votre base de données ou mis à jour son certificat après le 28 juillet 2020, aucune action n'est requise. Pour plus d'informations, consultez Go GitHub issue #39568.

Mettre à jour votre certificat CA en modifiant votre instance ou cluster de base de données

L'exemple suivant met à jour votre certificat CA de rds-ca-2019 à 2048-g1. rds-ca-rsa Vous pouvez choisir un autre certificat. Pour de plus amples informations, veuillez consulter Autorités de certification.

Mettez à jour le magasin de confiance de votre application afin de réduire les temps d'arrêt associés à la mise à jour de votre certificat CA. Pour plus d'informations sur les redémarrages associés à la rotation des certificats CA, consultezRotation automatique du certificat de serveur.

Pour mettre à jour votre certificat CA en modifiant votre instance ou cluster de base de données
  1. Téléchargez le nouveau TLS certificatSSL/comme décrit dans.

  2. Mettez à jour vos applications pour utiliser le nouveau TLS certificat SSL /.

    Les méthodes de mise à jour des applications pour les nouveaux TLS certificatsSSL/dépendent de vos applications spécifiques. Collaborez avec les développeurs de vos applications pour mettre à jour les TLS certificatsSSL/de vos applications.

    Pour plus d'informations sur la vérification des TLS connexionsSSL/et la mise à jour des applications pour chaque moteur de base de données, consultez les rubriques suivantes :

    Pour obtenir un exemple de script qui met à jour le magasin d'approbations d'un système d'exploitation Linux, consultez Exemple de script pour importer les certificats dans votre magasin d'approbations.

    Note

    L'ensemble de certificats contient des certificats pour le nouveau et l'ancien CA, ce qui signifie que vous pouvez mettre à niveau votre application en toute sécurité et conserver la connectivité pendant la période de transition. Si vous utilisez le AWS Database Migration Service pour migrer une base de données vers une instance de base de données ou un cluster , nous vous recommandons d'utiliser le bundle de certificats pour garantir la connectivité pendant la migration.

  3. Modifiez l'instance de base de données ou le cluster de base de données multi-AZ pour faire passer l'autorité de certification de rds-ca-2019 à 2048-g1. rds-ca-rsa Pour vérifier si votre base de données doit être redémarrée pour mettre à jour les certificats CA, utilisez la describe-db-engine-versionscommande et cochez l'SupportsCertificateRotationWithoutRestartindicateur.

    Important

    Si vous rencontrez des problèmes de connectivité après l'expiration du certificat, utilisez l'option Appliquer immédiatement en spécifiant Appliquer immédiatement dans la console ou en spécifiant l'--apply-immediatelyoption à l'aide du AWS CLI. Par défaut, cette opération est planifiée pour être exécutée lors de votre prochaine fenêtre de maintenance.

    Pour définir une dérogation pour l'autorité de certification de votre instance de différente de l'autorité de RDS certification par défaut, utilisez la commande modify-certificatesCLI.

Vous pouvez utiliser le plugin AWS Management Console ou le AWS CLI pour modifier le certificat CA de rds-ca-2019 à rds-ca-rsa 2048-g1 pour une instance de base de données ou un cluster de base de données multi-AZ.

Console
  1. Connectez-vous au AWS Management Console et ouvrez la RDS console Amazon à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le volet de navigation, choisissez Databases, puis choisissez l'instance de base de données ou le cluster de base de données multi-AZ que vous souhaitez modifier.

  3. Sélectionnez Modifier.

    Modifier une instance de base de données ou un cluster de base de données multi-AZ
  4. Dans la section Connectivité, choisissez rds-ca-rsa2048-g1.

    Choisissez un certificat CA
  5. Choisissez Continuer et vérifiez le récapitulatif des modifications.

  6. Pour appliquer les modifications immédiatement, choisissez Appliquer immédiatement.

  7. Sur la page de confirmation, examinez vos modifications. S'ils sont corrects, choisissez Modifier l'instance de base de données ou Modifier le cluster pour enregistrer vos modifications.

    Important

    Lorsque vous planifiez cette opération, assurez-vous d'avoir mis à jour votre magasin d'approbation côté client au préalable.

    Ou choisissez Retour pour revoir vos modifications, ou choisissez Annuler pour les annuler.

AWS CLI

Pour utiliser le plugin AWS CLI pour changer l'autorité de certification de rds-ca-2019 à rds-ca-rsa2048-g1 pour une instance de base de données ou un cluster de base de données multi-AZ, appelez la commande or. modify-db-instancemodify-db-cluster Spécifiez l'identifiant de l'instance ou du cluster de base de données et l'--ca-certificate-identifieroption.

Utilisez le --apply-immediately paramètre pour appliquer la mise à jour immédiatement. Par défaut, il est prévu que cette opération soit exécutée pendant votre prochaine fenêtre de maintenance.

Important

Lorsque vous planifiez cette opération, assurez-vous d'avoir mis à jour votre magasin d'approbation côté client au préalable.

Instance DB

L'exemple suivant modifie mydbinstance en définissant le certificat CA surrds-ca-rsa2048-g1.

Dans Linux, macOS, ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --ca-certificate-identifier rds-ca-rsa2048-g1

Dans Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --ca-certificate-identifier rds-ca-rsa2048-g1
Note

Si votre instance nécessite un redémarrage, vous pouvez utiliser la modify-db-instanceCLIcommande et spécifier l'--no-certificate-rotation-restartoption.

Cluster de bases de données multi-AZ

L'exemple suivant modifie mydbcluster en définissant le certificat CA surrds-ca-rsa2048-g1.

Dans Linux, macOS, ou Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --ca-certificate-identifier rds-ca-rsa2048-g1

Dans Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --ca-certificate-identifier rds-ca-rsa2048-g1

Mise à jour de votre certificat CA en appliquant la maintenance

Procédez comme suit pour mettre à jour votre certificat CA en appliquant la maintenance.

Console
Pour mettre à jour votre certificat CA en appliquant la maintenance
  1. Connectez-vous au AWS Management Console et ouvrez la RDS console Amazon à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le volet de navigation, sélectionnez Mise à jour du certificat.

    Option du volet de navigation de rotation des certificats

    La page Bases de données nécessitant une mise à jour de certificat apparaît.

    Mettre à jour le certificat CA pour la base de données
    Note

    Cette page affiche uniquement les instances et les clusters de base de données pour le Région AWS. Si vous avez des bases de données dans plusieurs Région AWS, consultez cette page dans chaque Région AWS pour voir toutes les instances de base de données dotées d'anciens TLS certificats SSL /.

  3. Choisissez l'instance de base de données ou le cluster de base de données multi-AZ que vous souhaitez mettre à jour.

    Vous pouvez planifier la rotation du certificat pour votre prochaine fenêtre de maintenance en choisissant Planification. Appliquez la rotation immédiatement en choisissant Appliquer maintenant.

    Important

    Si vous rencontrez des problèmes de connectivité après l'expiration du certificat, utilisez l'option Appliquer maintenant.

    1. Si vous choisissez Planification, vous êtes invité à confirmer la rotation du certificat CA. Cette invite indique également la fenêtre planifiée pour votre mise à jour.

      Confirmation de la rotation du certificat
    2. Si vous choisissez Appliquer maintenant, vous êtes invité à confirmer la rotation du certificat CA.

      Confirmation de la rotation du certificat
    Important

    Avant de planifier la rotation des certificats CA sur votre base de données, mettez à jour toutes les applications clientes qui utilisentSSL/TLSet le certificat du serveur pour se connecter. Ces mises à jour sont spécifiques à votre moteur de base de données. Après avoir mis à jour ces applications clientes, vous pouvez confirmer la rotation du certificat CA.

    Pour continuer, cochez la case, puis cliquez sur Confirmation.

  4. Répétez les étapes 3 et 4 pour chaque instance de base de données et cluster que vous souhaitez mettre à jour.

Rotation automatique du certificat de serveur

Si votre autorité de certification racine prend en charge la rotation automatique des certificats de serveur, gère RDS automatiquement la rotation du certificat de serveur de base de données. RDSutilise la même autorité de certification racine pour cette rotation automatique, vous n'avez donc pas besoin de télécharger un nouveau bundle d'autorités de certification. Consultez Autorités de certification.

La rotation et la validité de votre certificat de serveur de base de données dépendent de votre moteur de base de données :

  • Si votre moteur de base de données prend en charge la rotation sans redémarrage, fait RDS automatiquement pivoter le certificat du serveur de base de données sans aucune action de votre part. RDStente de faire pivoter votre certificat de serveur de base de données pendant votre période de maintenance préférée pendant la demi-vie du certificat de serveur de base de données. Le nouveau certificat de serveur de base de données est valide pendant 12 mois.

  • Si votre moteur de base de données ne prend pas en charge la rotation sans redémarrage, il vous RDS avertit d'un événement de maintenance au moins 6 mois avant l'expiration du certificat du serveur de base de données. Le nouveau certificat de serveur de base de données est valide pendant 36 mois.

Utilisez la describe-db-engine-versionscommande et inspectez l'SupportsCertificateRotationWithoutRestartindicateur pour déterminer si la version du moteur de base de données prend en charge la rotation du certificat sans redémarrage. Pour de plus amples informations, veuillez consulter Configuration de l'autorité de certification pour votre base de données.

Exemple de script pour importer les certificats dans votre magasin d'approbations

Voici des exemples de scripts shell qui importent le lot de certificats dans un magasin d'approbations.

Chaque exemple de script shell utilise keytool, qui fait partie du kit de développement Java (JDK). Pour plus d'informations sur l'installation duJDK, consultez le Guide JDK d'installation.

Linux

Voici un exemple de scripting shell qui importe le lot de certificats vers un magasin d'approbations sur un système d'exploitation Linux.

mydir=tmp/certs if [ ! -e "${mydir}" ] then mkdir -p "${mydir}" fi truststore=${mydir}/rds-truststore.jks storepassword=changeit curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" > ${mydir}/global-bundle.pem awk 'split_after == 1 {n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1}{print > "rds-ca-" n+1 ".pem"}' < ${mydir}/global-bundle.pem for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print') echo "Importing $alias" keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt rm $CERT done rm ${mydir}/global-bundle.pem echo "Trust store content is: " keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'` echo " Certificate ${alias} expires in '$expiry'" done
macOS

Voici un exemple de scripting shell qui importe le lot de certificats vers un magasin d'approbations sur macOS.

mydir=tmp/certs if [ ! -e "${mydir}" ] then mkdir -p "${mydir}" fi truststore=${mydir}/rds-truststore.jks storepassword=changeit curl -sS "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" > ${mydir}/global-bundle.pem split -p "-----BEGIN CERTIFICATE-----" ${mydir}/global-bundle.pem rds-ca- for CERT in rds-ca-*; do alias=$(openssl x509 -noout -text -in $CERT | perl -ne 'next unless /Subject:/; s/.*(CN=|CN = )//; print') echo "Importing $alias" keytool -import -file ${CERT} -alias "${alias}" -storepass ${storepassword} -keystore ${truststore} -noprompt rm $CERT done rm ${mydir}/global-bundle.pem echo "Trust store content is: " keytool -list -v -keystore "$truststore" -storepass ${storepassword} | grep Alias | cut -d " " -f3- | while read alias do expiry=`keytool -list -v -keystore "$truststore" -storepass ${storepassword} -alias "${alias}" | grep Valid | perl -ne 'if(/until: (.*?)\n/) { print "$1\n"; }'` echo " Certificate ${alias} expires in '$expiry'" done