View a markdown version of this page

Verwenden der IAM-Authentifizierung für den Amazon RDS-Endpunkt in AWS DMS - AWS Datenbankmigrationsdienst

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.

Verwenden der IAM-Authentifizierung für den Amazon RDS-Endpunkt in AWS DMS

AWS Die Identity and Access Management (IAM) -Datenbankauthentifizierung bietet erhöhte Sicherheit für Ihre Amazon RDS-Datenbanken, indem der Datenbankzugriff über AWS IAM-Anmeldeinformationen verwaltet wird. Anstatt herkömmliche Datenbankkennwörter zu verwenden, generiert die IAM-Authentifizierung kurzlebige Authentifizierungstoken, die 15 Minuten lang gültig sind, unter Verwendung von Anmeldeinformationen. AWS Dieser Ansatz verbessert die Sicherheit erheblich, da Datenbankkennwörter nicht mehr im Anwendungscode gespeichert werden müssen, wodurch das Risiko einer Offenlegung von Anmeldeinformationen verringert wird und eine zentrale Zugriffsverwaltung über IAM ermöglicht wird. Es vereinfacht auch die Zugriffsverwaltung, indem vorhandene AWS IAM-Rollen und -Richtlinien genutzt werden, sodass Sie den Datenbankzugriff mithilfe desselben IAM-Frameworks steuern können, das Sie für andere Dienste verwenden. AWS

AWS DMS unterstützt jetzt die IAM-Authentifizierung für Replikationsinstanzen, auf denen DMS-Version 3.6.1 oder höher ausgeführt wird, wenn eine Verbindung zu MySQL-, PostgreSQL-, Aurora PostgreSQL-, Aurora MySQL- oder MariaDB-Endpunkten auf Amazon RDS hergestellt wird. Wenn Sie einen neuen Endpunkt für diese Engines erstellen, können Sie die IAM-Authentifizierung auswählen und eine IAM-Rolle angeben, anstatt Datenbankanmeldeinformationen anzugeben. Diese Integration erhöht die Sicherheit, da die Verwaltung und Speicherung von Datenbankkennwörtern für Ihre Migrationsaufgaben entfällt.

Konfiguration der IAM-Authentifizierung für den Amazon RDS-Endpunkt in AWS DMS

Wenn Sie einen Endpunkt erstellen, können Sie die IAM-Authentifizierung für Ihre Amazon RDS-Datenbank konfigurieren. Gehen Sie wie folgt vor, um die IAM-Authentifizierung zu konfigurieren:

  1. Stellen Sie sicher, dass für Amazon RDS und den Datenbankbenutzer die IAM-Authentifizierung aktiviert ist. Weitere Informationen finden Sie unter Aktivieren und Deaktivieren der IAM-Datenbankauthentifizierung im Amazon Relational Database Service-Benutzerhandbuch.

  2. Navigieren Sie zur IAM-Konsole und erstellen Sie eine IAM-Rolle mit den folgenden Richtlinien:

    Richtlinie

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": "*" } ] }

    Vertrauensrichtlinie:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "dms.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  3. Navigieren Sie während der Endpunktkonfiguration in der AWS DMS Konsole zum Abschnitt Zugriff auf die Endpunktdatenbank und wählen Sie IAM-Authentifizierung aus.

  4. Wählen Sie im Dropdownmenü IAM-Rolle für die RDS-Datenbankauthentifizierung die IAM-Rolle mit den entsprechenden Berechtigungen für den Zugriff auf die Datenbank aus.

    Weitere Informationen finden Sie unter Quell- und Zielendpunkte erstellen.

  1. Stellen Sie sicher, dass für Amazon RDS und den Datenbankbenutzer die IAM-Authentifizierung aktiviert ist. Weitere Informationen finden Sie unter Aktivieren und Deaktivieren der IAM-Datenbankauthentifizierung im Amazon Relational Database Service-Benutzerhandbuch.

  2. Navigieren Sie zur AWS CLI, erstellen Sie eine IAM-Rolle und lassen Sie DMS die Rolle übernehmen:

    Richtlinie:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": "*" } ] }

    Vertrauensrichtlinie:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "dms.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  3. Führen Sie den folgenden Befehl aus, um das Zertifikat zu importieren und die PEM-Datei herunterzuladen. Weitere Informationen finden Sie unter Herunterladen von Zertifikatspaketen für Amazon RDS im Amazon Relational Database Service-Benutzerhandbuch.

    aws dms import-certificate --certificate-identifier rdsglobal --certificate-pem file://~/global-bundle.pem
  4. Führen Sie die folgenden Befehle aus, um einen IAM-Endpunkt zu erstellen:

    • Für PostgreSQL/Aurora PostgreSQL-Endpunkte (wenn auf gesetzt sslmode istrequired, ist das --certificate-arn Flag nicht erforderlich):

      aws dms create-endpoint --endpoint-identifier <endpoint-name> --endpoint-type <source/target> --engine-name <postgres/aurora-postgres> --username <db username with iam auth privileges> --server-name <db server name> --port <port number> --ssl-mode <required/verify-ca/verify-full> --postgre-sql-settings "{\"ServiceAccessRoleArn\": \"role arn created from step 2 providing permissions for iam authentication\", \"AuthenticationMethod\": \"iam\", \"DatabaseName\": \"database name\"}" --certificate-arn <if sslmode is verify-ca/verify full use cert arn generated in step 3, otherwise this parameter is not required>
    • Für MySQL-, MariaDB- oder Aurora MySQL-Endpunkte:

      aws dms create-endpoint --endpoint-identifier <endpoint-name> --endpoint-type <source/target> --engine-name <mysql/mariadb/aurora> --username <db username with iam auth privileges> --server-name <db server name> --port <port number> --ssl-mode <verify-ca/verify-full> --my-sql-settings "{\"ServiceAccessRoleArn\": \"role arn created from step 2 providing permissions for iam authentication\", \"AuthenticationMethod\": \"iam\", \"DatabaseName\": \"database name\"}" --certificate-arn <cert arn from previously imported cert in step 3>
  5. Führen Sie eine Testverbindung mit Ihrer gewünschten Replikationsinstanz aus, um die Instance-Endpunktzuordnung zu erstellen und zu überprüfen, ob alles korrekt eingerichtet ist:

    aws dms test-connection --replication-instance-arn <replication instance arn> --endpoint-arn <endpoint arn from previously created endpoint in step 4>
    Anmerkung

    Wenn Sie die IAM-Authentifizierung verwenden, muss die in der Testverbindung angegebene Replikationsinstanz AWS DMS Version 3.6.1 oder höher verwenden.

Einschränkungen

Weitere Informationen zu den Einschränkungen der IAM-Datenbankauthentifizierung für Amazon RDS-Datenbanken finden Sie unter Einschränkungen für die IAM-Datenbankauthentifizierung im Amazon Relational Database Service-Benutzerhandbuch.