IAM-Datenbankauthentifizierung - Amazon Aurora

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.

IAM-Datenbankauthentifizierung

Sie können sich mit der AWS Identity and Access Management-(IAM)-Datenbankauthentifizierung bei Ihrem DB--Cluster authentifizieren. Die IAM-Datenbankauthentifizierung funktioniert mit Aurora MySQL und Aurora PostgreSQL. Mit dieser Authentifizierungsmethode benötigen Sie kein Passwort, um eine Verbindung mit einer DB-Cluster herzustellen. Stattdessen verwenden Sie ein Authentifizierungstoken.

Ein Authentifizierungstoken ist eine eindeutige Zeichenfolge, die von Amazon Aurora auf Anforderung erzeugt wird. Die Authentifizierungstoken werden mithilfe der AWS Signature Version 4 erzeugt. Jedes Token verfällt 15 Minuten nach seiner Erzeugung. Da die Authentifizierung mithilfe von IAM extern verwaltet wird, ist es nicht erforderlich, Benutzeranmeldeinformationen in der Datenbank zu speichern. Sie können weiterhin auch die Standard-Datenbank-Authentifizierung verwenden. Das Token wird nur zur Authentifizierung verwendet und wirkt sich nicht auf die Sitzung aus, nachdem es eingerichtet wurde.

Die IAM-Datenbank-Authentifizierung bietet die folgenden Vorteile:

  • Der Netzwerkverkehr zur und von der Datenbank wird mit Secure Socket Layer (SSL) oder Transport Layer Security (TLS) verschlüsselt. Weitere Informationen zur Verwendung von SSL/TLS mit Amazon Aurora finden Sie unter Verwenden von SSL/TLS zum Verschlüsseln einer Verbindung zu einer .

  • Sie können IAM verwenden, um den Zugriff auf Ihre Datenbankressourcen zentral zu verwalten, anstatt den Zugriff individuell auf jedem DB-Cluster zu verwalten.

  • Für Anwendungen, die auf Amazon EC2 laufen, können Sie die der EC2-Instance eigenen Profil-Anmeldeinformationen anstatt eines Passworts verwenden, um auf Ihre Datenbank zuzugreifen. Dies erhöht die Sicherheit.

Erwägen Sie im Allgemeinen, die IAM-Datenbankauthentifizierung zu verwenden, wenn Ihre Anwendungen weniger als 200 Verbindungen pro Sekunde erstellen und Sie Benutzernamen und Passwörter nicht direkt in Ihrem Anwendungscode verwalten möchten.

Der AWS JDBC-Treiber für MySQL unterstützt IAM-Datenbankauthentifizierung. Weitere Informationen finden Sie unter AWS IAM-Datenbankauthentifizierung im Repository für AWS JDBC-Treiber für MySQL GitHub .

Verfügbarkeit von Regionen und Versionen

Die Verfügbarkeit von Funktionen und der Support variieren zwischen bestimmten Versionen der einzelnen Aurora-Datenbank-Engines und in allen AWS-Regionen. Weitere Informationen zur Verfügbarkeit von Versionen und Regionen mit Aurora- und IAM-Datenbankauthentifizierung finden Sie unter IAM-Datenbank-Authentifizierung in Aurora.

Für Aurora MySQL unterstützen alle unterstützten DB-Instance-Klassen die IAM-Datenbank-Authentifizierung, mit Ausnahme von db.t2.small und db.t3.small. Informationen zu den unterstützten DB-Instance-Klassen finden Sie unter Unterstützte DB-Engines für DB-Instance-Klassen.

CLI- und SDK-Unterstützung

Die IAM-Datenbank-Authentifizierung ist für die AWS CLI und für die folgenden sprachspezifischen AWS-SDKs verfügbar:

Einschränkungen der IAM-Datenbank-Authentifizierung

Beachten Sie bei der Verwendung der IAM-Datenbankauthentifizierung die folgenden Einschränkungen:

  • Die maximale Anzahl von Verbindungen pro Sekunde für Ihren DB-Cluster ist möglicherweise abhängig von ihrer/seiner DB-Instance-Klasse und Ihrer Workload begrenzt. Die IAM-Authentifizierung kann bei Ressourcenerschöpfung bei Spitzen-DB-Lasten fehlschlagen.

  • Derzeit unterstützt die IAM-Datenbankauthentifizierung nicht alle globalen Bedingungskontextschlüssel.

    Weitere Informationen über globale Bedingungskontextschlüssel finden Sie unter Globale AWS-Bedingungskontextschlüssel im IAM-Benutzerhandbuch.

  • Wenn die IAM-Rolle (rds_iam) einem Benutzer (einschließlich RDS-Hauptbenutzer) hinzugefügt wird, hat bei PostgreSQL die IAM-Authentifizierung Vorrang vor der Passwort-Authentifizierung, so dass sich der Benutzer als IAM-Benutzer anmelden muss.

  • Für Aurora PostgreSQL können Sie die IAM-Authentifizierung nicht verwenden, um eine Replikationsverbindung herzustellen.

  • Sie können keinen benutzerdefinierten Route-53-DNS-Datensatz anstelle des DB-Cluster-Endpunkts verwenden, um das Authentifizierungstoken zu generieren.

Empfehlungen für die IAM-Datenbankauthentifizierung

Bei Verwendung der IAM-Datenbankauthentifizierung empfehlen wir Folgendes:

  • Verwenden Sie die IAM-Datenbankauthentifizierung, wenn Ihre Anwendung weniger als 200 neue IAM-Datenbankauthentifizierungsverbindungen pro Sekunde benötigt.

    Die Datenbank-Engines, die mit Amazon Aurora kompatibel sind, setzen den Authentifizierungsversuchen pro Sekunde keine Grenzen. Wenn Sie jedoch die IAM-Datenbank-Authentifizierung verwenden, muss Ihre Anwendung ein Authentifizierungstoken erzeugen. Ihre Anwendung verwendet dann dieses Token, um eine Verbindung mit dem DB-Cluster herzustellen. Wenn Sie die Höchstanzahl neuer Verbindungen pro Sekunde überschreiten, kann der zusätzliche Overhead der IAM-Datenbankauthentifizierung zur Verbindungsablehnung führen.

    Erwägen Sie die Verwendung von Verbindungspooling in Ihren Anwendungen, um den ständigen Verbindungsaufbau zu begrenzen. Dadurch lässt sich der Aufwand für die IAM-DB-Authentifizierung reduzieren und Ihre Anwendungen können bestehende Verbindungen wiederverwenden. Erwägen Sie alternativ die Verwendung von RDS-Proxy für diese Anwendungsfälle. RDS-Proxy ist mit zusätzlichen Kosten verbunden. Weitere Informationen finden Sie unter RDS-Proxy – Preise.

  • Die Größe eines IAM-Datenbankauthentifizierungstokens hängt von vielen Faktoren ab, einschließlich der Anzahl der IAM-Tags, IAM-Servicerichtlinien, ARN-Längen sowie andere IAM- und Datenbankeigenschaften. Die Mindestgröße dieses Tokens beträgt im Allgemeinen etwa 1 KB, kann aber durchaus größer sein. Da dieses Token bei der IAM-Authentifizierung als Passwort in der Verbindungszeichenfolge zur Datenbank verwendet wird, sollten Sie sicherstellen, dass Ihr Datenbanktreiber (z. B. ODBC) und/oder andere Tools dieses Token aufgrund seiner Größe nicht beschränken oder auf andere Weise kürzen. Ein verkürztes Token führt dazu, dass die von der Datenbank und IAM durchgeführte Authentifizierungsüberprüfung fehlschlägt.

  • Wenn Sie beim Erstellen eines IAM-Datenbank-Authentifizierungstokens temporäre Anmeldeinformationen verwenden, müssen die temporären Anmeldeinformationen weiterhin gültig sein, wenn Sie das IAM-Datenbank-Authentifizierungstoken für eine Verbindungsanforderung verwenden.

Nicht unterstützte globale AWS-Bedingungskontextschlüssel

Die IAM-Datenbankauthentifizierung unterstützt die folgende Teilmenge globaler AWS-Bedingungskontextschlüssel nicht.

  • aws:Referer

  • aws:SourceIp

  • aws:SourceVpc

  • aws:SourceVpce

  • aws:UserAgent

  • aws:VpcSourceIp

Weitere Informationen finden Sie unter Globale AWS-Bedingungskontextschlüssel im IAM-Benutzerhandbuch.