Rotieren Ihrer SSL/TLS-Zertifikate - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Rotieren Ihrer SSL/TLS-Zertifikate

Die Zertifikate der Amazon-RDS-Zertifizierungsstelle rds-ca-2019 sind im August 2024 abgelaufen. Wenn Sie Secure Sockets Layer (SSL) oder Transport Layer Security (TLS) mit Zertifikatsüberprüfung verwenden oder dies planen, um eine Verbindung zu Ihren RDS-DB-Instances oder Multi-AZ-DB-Clustern herzustellen, sollten Sie die Verwendung eines der neuen CA-Zertifikate rds-ca-rsa 2048-g1, rds-ca-rsa 4096-g1 oder 384-g1 in Betracht ziehen. rds-ca-ecc Wenn Sie derzeit keine Zertifikatsverifizierung verwenden SSL/TLS , haben Sie möglicherweise immer noch ein abgelaufenes CA-Zertifikat und müssen es auf ein neues CA-Zertifikat aktualisieren, wenn Sie es SSL/TLS mit der Zertifikatsverifizierung verwenden möchten, um eine Verbindung zu Ihren RDS-Datenbanken herzustellen.

Amazon RDS bietet neue CA-Zertifikate als bewährte AWS Sicherheitsmethode. Informationen zu den neuen Zertifikaten und den unterstützten AWS Regionen finden Sie unter.

Verwenden Sie die folgenden Methoden, um das CA-Zertifikat für Ihre Datenbank zu aktualisieren:

Bevor Sie Ihre DB-Instances oder DB-Cluster mit Multi-AZ zur Verwendung des neuen CA-Zertifikats aktualisieren, stellen sie sicher, dass Sie Ihre Clients oder Anwendungen aktualisieren, die eine Verbindung mit Ihren RDS-Datenbanken herstellen.

Überlegungen zur Rotation von Zertifikaten

Beachten Sie die folgenden Situationen, bevor Sie Ihr Zertifikat rotieren:

  • Amazon RDS Proxy Zertifikate von AWS Certificate Manager (ACM). Wenn Sie RDS Proxy verwenden, müssen Sie beim Rotieren Ihres SSL/TLS Zertifikats keine Anwendungen aktualisieren, die RDS-Proxy-Verbindungen verwenden. Weitere Informationen finden Sie unter Verwendung TLS/SSL mit RDS Proxy.

  • Wenn Sie eine Go-Anwendung der Version 1.15 mit einer DB-Instance oder einem DB-Cluster mit Multi-AZ verwenden, die vor dem 28. Juli 2020 erstellt oder auf das Zertifikat rds-ca-2019 aktualisiert wurde, müssen Sie das Zertifikat erneut aktualisieren.

    Verwenden Sie den Befehl modify-db-instance für eine DB-Instance oder den Befehl modify-db-cluster für einen DB-Cluster mit Multi-AZ unter Verwendung der neuen CA-Zertifikat-ID. Sie können die, die für eine bestimmte DB-Engine und DB-Engine-Version verfügbar sind CAs , mit dem Befehl finden. describe-db-engine-versions

    Wenn Sie Ihre Datenbank nach dem 28. Juli 2020 erstellt oder das entsprechende Zertifikat aktualisiert haben, ist keine Aktion erforderlich. Weitere Informationen finden Sie in GitHub Go-Ausgabe #39568.

Aktualisieren des CA-Zertifikats durch Ändern der DB-Instance oder des DB-Clusters

Im folgenden Beispiel wird Ihr CA-Zertifikat von rds-ca-2019 auf 2048-g1 aktualisiert. rds-ca-rsa Sie können ein anderes Zertifikat wählen. Weitere Informationen finden Sie unterZertifizierungsstellen.

Aktualisieren Sie den Trust Store Ihrer Anwendung, um Ausfallzeiten im Zusammenhang mit der Aktualisierung Ihres CA-Zertifikats zu reduzieren. Weitere Informationen zu Neustarts in Zusammenhang mit der CA-Zertifikatrotation finden Sie unter Automatische Rotation von Serverzertifikaten.

So aktualisieren Sie das CA-Zertifikat durch Ändern der DB-Instance oder des DB-Clusters
  1. Laden Sie das neue SSL/TLS Zertifikat herunter, wie unter beschrieben.

  2. Aktualisieren Sie Ihre Anwendungen zur Verwendung der neuen SSL/TLS-Zertifikate.

    Die Methoden zur Aktualisierung von Anträgen auf neue SSL/TLS Zertifikate hängen von Ihren spezifischen Anwendungen ab. Arbeiten Sie mit Ihren Anwendungsentwicklern zusammen, um die SSL/TLS Zertifikate für Ihre Anwendungen zu aktualisieren.

    Informationen zum Prüfen von SSL/TLS Verbindungen und zum Aktualisieren von Anwendungen für die einzelnen DB-Engines finden Sie in den folgenden Themen:

    Ein Beispielskript, das einen Trust Store für ein Linux-Betriebssystem aktualisiert, finden Sie unterBeispielskript für den Import von Zertifikaten in Ihren Trust Store.

    Anmerkung

    Das Zertifikatpaket enthält Zertifikate für die neue und die alte CA, damit Sie Ihre Anwendung sicher aktualisieren und die Verbindung während der Übergangsphase aufrecht erhalten können. Wenn Sie das verwenden, um eine Datenbank AWS Database Migration Service zu einer DB-Instance oder einem zu migrieren, empfehlen wir die Verwendung des Zertifikatspakets, um die Konnektivität während der Migration sicherzustellen.

  3. Ändern Sie die DB-Instance oder den Multi-AZ-DB-Cluster, um die CA von rds-ca-2019 auf 2048-g1 zu ändern. rds-ca-rsa Um zu überprüfen, ob Ihre Datenbank zum Aktualisieren der CA-Zertifikate neu gestartet werden muss, verwenden Sie den Befehl und überprüfen Sie das Flag. describe-db-engine-versionsSupportsCertificateRotationWithoutRestart

    Wichtig

    Wenn nach dem Ablauf des Zertifikats Verbindungsprobleme auftreten, verwenden Sie die Option „Sofort anwenden“, indem Sie Sofort anwenden in der Konsole angeben oder die Option --apply-immediately mit der AWS CLI festlegen. Die Ausführung dieser Operation ist standardmäßig während Ihres nächsten Wartungsfensters eingeplant.

    Bei DB-Instances von RDS für Oracle empfehlen wir Ihnen, Ihre Oracle-DB neu zu starten, um Verbindungsfehler zu vermeiden.

    Bei Multi-AZ-Instances von RDS für SQL Server mit AlwaysOn aktivierter Spiegelungsoption wird ein Failover erwartet, wenn die Instanz nach der Zertifikatsrotation neu gestartet wird.

    Um eine Überschreibung für Ihre Instance-CA festzulegen, die sich von der standardmäßigen RDS-CA unterscheidet, verwenden Sie den CLI-Befehl modify-certificates.

Sie können das AWS-Managementkonsole oder das verwenden, AWS CLI um das CA-Zertifikat von rds-ca-2019 auf rds-ca-rsa2048-g1 für eine DB-Instance oder einen Multi-AZ-DB-Cluster zu ändern.

Console
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Datenbanken und dann die DB-Instance oder den DB-Cluster mit Multi-AZ für die Änderung aus.

  3. Wählen Sie Ändern aus.

    Ändern einer DB-Instance oder eines DB-Clusters mit Multi-AZ
  4. Wählen Sie im Bereich Konnektivität die Option rds-ca-rsa2048-g1 aus.

    CA-Zertifikat auswählen
  5. Klicken Sie auf Weiter und überprüfen Sie die Zusammenfassung aller Änderungen.

  6. Wählen Sie Sofort anwenden aus, um die Änderungen sofort anzuwenden.

  7. Überprüfen Sie auf der Bestätigungsseite Ihre Änderungen. Wenn sie korrekt sind, wählen Sie DB-Instance ändern oder Cluster ändern aus, um Ihre Änderungen zu speichern.

    Wichtig

    Wenn Sie diese Operation planen, stellen Sie sicher, dass Sie zuvor Ihren clientseitigen Vertrauensspeicher aktualisiert haben.

    Oder klicken Sie auf Zurück, um Ihre Änderungen zu bearbeiten, oder auf Abbrechen, um Ihre Änderungen zu verwerfen.

AWS CLI

AWS CLI Um die CA für eine DB-Instance oder einen Multi-AZ-DB-Cluster von rds-ca-2019 auf rds-ca-rsa2048-g1 zu ändern, rufen Sie den Befehl or auf. modify-db-instancemodify-db-cluster Geben Sie die DB-Instance- oder Cluster-Kennung und die Option --ca-certificate-identifier an.

Verwenden Sie den Parameter --apply-immediately, um das Update sofort anzuwenden. Die Ausführung dieser Operation ist standardmäßig während Ihres nächsten Wartungsfensters eingeplant.

Wichtig

Wenn Sie diese Operation planen, stellen Sie sicher, dass Sie zuvor Ihren clientseitigen Vertrauensspeicher aktualisiert haben.

DB-Instance

Das folgende Beispiel ändert mydbinstance, indem das CA-Zertifikat auf rds-ca-rsa2048-g1 festgelegt wird.

Für Linux, macOS oder Unix:

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

Für Windows:

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

Wenn Ihre Instance neu gestartet werden muss, können Sie den modify-db-instanceCLI-Befehl verwenden und die --no-certificate-rotation-restart Option angeben.

Multi-AZ-DB-Cluster

Das folgende Beispiel ändert mydbcluster, indem das CA-Zertifikat auf rds-ca-rsa2048-g1 festgelegt wird.

Für Linux, macOS oder Unix:

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

Für Windows:

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

Aktualisieren des CA-Zertifikats durch Anwenden der Wartung

Führen Sie die folgenden Schritte aus, um Ihr CA-Zertifikat durch Anwendung der Wartung zu aktualisieren.

Console
So aktualisieren Sie Ihr CA-Zertifikat durch Anwendung der Wartung
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die Option Zertifikataktualisierung.

    Option zur Zertifikatrotation im Navigationsbereich

    Die Seite Datenbanken, die eine Zertifikataktualisierung erfordern wird angezeigt.

    Aktualisieren des CA-Zertifikats für die Datenbank
    Anmerkung

    Auf dieser Seite werden nur die aktuellen DB-Instances und -Cluster angezeigt AWS-Region. Wenn Sie Datenbanken in mehr als einer haben AWS-Region, überprüfen Sie diese Seite auf jeder Seite, AWS-Region um alle DB-Instances mit alten SSL/TLS Zertifikaten zu sehen.

  3. Wählen Sie die DB-Instance oder den DB-Cluster mit Multi-AZ für die Aktualisierung aus.

    Sie können die Zertifikatrotation für das nächste Wartungsfenster planen, indem Sie Zeitplan wählen. Wenden Sie die Rotation sofort an, indem Sie Jetzt anwenden wählen.

    Wichtig

    Wenn nach Ablauf des Zertifikats Verbindungsprobleme auftreten, verwenden Sie die Option Jetzt anwenden.

    1. Wenn Sie Zeitplan wählen, werden Sie aufgefordert, die Rotation der CA-Zertifikate zu bestätigen. In dieser Aufforderung wird auch das geplante Fenster für das Update angegeben.

      Confirm certificate rotation (Zertifikatrotation bestätigen)
    2. Wenn Sie Jetzt anwenden wählen, werden Sie aufgefordert, die Rotation der CA-Zertifikate zu bestätigen.

      Confirm certificate rotation (Zertifikatrotation bestätigen)
    Wichtig

    Bevor Sie die Rotation der CA-Zertifikate für Ihre Datenbank planen, aktualisieren Sie alle Client-Anwendungen, die das Serverzertifikat für die Verbindung verwenden SSL/TLS . Diese Updates sind spezifisch für Ihre DB-Engine. Nachdem Sie diese Clientanwendungen aktualisiert haben, können Sie die Rotation des CA-Zertifikats bestätigen.

    Aktivieren Sie das Kontrollkästchen und klicken Sie dann auf Confirm (Bestätigen), um fortzufahren.

  4. Wiederholen Sie Schritt 3 und 4 für alle DB-Instances und Cluster, die aktualisiert werden sollen.

Automatische Rotation von Serverzertifikaten

Wenn Ihre Root-CA die automatische Rotation von Serverzertifikaten unterstützt, übernimmt RDS automatisch die Rotation des DB-Serverzertifikats. RDS verwendet dieselbe Stamm-CA für diese automatische Rotation, sodass Sie kein neues CA-Paket herunterladen müssen. Siehe Zertifizierungsstellen.

Die Rotation und Gültigkeit Ihres DB-Serverzertifikats hängen von Ihrer DB-Engine ab:

  • Wenn Ihre DB-Engine die Rotation ohne Neustart unterstützt, rotiert RDS das DB-Serverzertifikat automatisch, ohne dass Sie etwas unternehmen müssen. RDS versucht, Ihr DB-Serverzertifikat in Ihrem bevorzugten Wartungsfenster nach der Halbwertszeit des DB-Serverzertifikats zu rotieren. Das neue DB-Serverzertifikat ist 12 Monate lang gültig.

  • Wenn Ihre DB-Engine die Rotation ohne Neustart nicht unterstützt, macht Amazon RDS während der Halbwertszeit des Zertifikats oder mindestens 3 Monate vor Ablauf eine server-certificate-rotation ausstehende Wartungsaktion per Describe-pending-maintenance-actions API sichtbar. Sie können die Rotation mithilfe der apply-pending-maintenance-action API anwenden. Das neue DB-Serverzertifikat ist 36 Monate lang gültig.

Verwenden Sie den describe-db-engine-versionsBefehl und überprüfen Sie das SupportsCertificateRotationWithoutRestart Flag, um festzustellen, ob die DB-Engine-Version das Rotieren des Zertifikats ohne Neustart unterstützt. Weitere Informationen finden Sie unter Einstellung der CA für Ihre Datenbank.

Beispielskript für den Import von Zertifikaten in Ihren Trust Store

Nachfolgend sind Beispiel-Shell-Skripte aufgeführt, die das Zertifikatspaket in einen Vertrauensspeicher importieren.

Jedes Beispiel-Shell-Skript verwendet keytool, das Teil des Java Development Kits (JDK) ist. Weitere Informationen über die Installation von JDK finden Sie im JDK-Installationshandbuch.

Linux

Nachfolgend finden Sie ein Beispiel-Shell-Skript, das das Zertifikatpaket in einen Trust Store auf einem Linux-Betriebssystem importiert.

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

Es folgt ein Beispiel für ein Shell-Skript, das das Zertifikatspaket in einen Vertrauensspeicher unter macOS importiert.

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