Herstellen einer Verbindung mit einer Amazon RDS-DB-Instance - Amazon Relational Database Service

Herstellen einer Verbindung mit einer Amazon RDS-DB-Instance

Bevor Sie eine Verbindung mit einer DB-Instance herstellen können, müssen Sie die DB-Instance erstellen. Weitere Informationen finden Sie unter Erstellen einer Amazon RDS-DB-Instance. Nachdem Amazon RDS Ihre DB-Instance bereitgestellt hat, verwenden Sie jede beliebige Standard-Client-Anwendung und jedes Hilfsprogramm für Ihre DB-Engine, um eine Verbindung mit der DB-Instance herzustellen. Geben Sie in der Verbindungszeichenfolge die DNS-Adresse aus dem Endpunkt der DB-Instance als Host-Parameter an. Sie geben auch die Portnummer vom DB-Instance-Endpunkt als Portparameter an.

Finden der Verbindungsinformationen für eine Amazon RDS-DB-Instance

Die Verbindungsinformationen für eine DB-Instance umfassen ihren Endpunkt, ihren Port und einen gültigen Datenbankbenutzer, z. B. den Masterbenutzer. Nehmen wir beispielsweise für eine MySQL-DB-Instance an, dass der Endpunktwert laute mydb.123456789012.us-east-1.rds.amazonaws.com. In diesem Fall ist 3306 der Port-Wert und der Datenbankbenutzer ist admin. Angesichts dieser Informationen geben Sie die folgenden Werte in einer Verbindungszeichenfolge an:

  • Geben Sie für den Host- bzw. Hostnamen oder den DNS-Namen a mydb.123456789012.us-east-1.rds.amazonaws.com.

  • Als Port 3306.

  • Geben Sie für Benutzer a admin.

Der Endpunkt ist für jede DB-Instance eindeutig, und die Werte des Ports und des Benutzers können variieren. Die folgende Liste zeigt den gebräuchlichsten Port für jede DB-Engine:

  • MariaDB – 3306

  • Microsoft SQL Server – 1433

  • MySQL – 3306

  • Oracle – 1521

  • PostgreSQL – 5432

Um eine Verbindung mit einer DB-Instance herzustellen, verwenden Sie einen beliebigen Client für eine DB-Engine. Sie könnten beispielsweise das mysql-Dienstprogramm verwenden, um eine Verbindung zu einer MariaDB- oder MySQL-DB-Instance herzustellen. Sie können Microsoft SQL Server Management Studio verwenden, um eine Verbindung mit einer SQL Server-DB-Instance herzustellen. Sie können Oracle SQL Developer verwenden, um eine Verbindung mit einer Oracle-DB-Instance herzustellen. Entsprechend können Sie das Befehlszeilenprogramm psql verwenden, um eine Verbindung mit einer PostgreSQL-DB-Instance herzustellen.

Verwenden Sie die AWS Management Console, um die Verbindungsinformationen für eine DB-Instance zu finden. Sie können auch den AWS Command Line Interface (AWS CLI)-Befehl describe-db-instances oder die RDS-API-Operation DescribeDBInstances verwenden.

So finden Sie die Verbindungsinformationen für eine DB-Instance im AWS Management Console
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Klicken Sie im Navigationsbereich auf Datenbanken, um eine Liste Ihrer DB-Instances anzuzeigen.

  3. Wählen Sie den Namen der DB-Instance aus, um ihre Details anzuzeigen.

  4. Kopieren Sie auf der Registerkarte Connectivity & security (Anbindung und Sicherheit) den Endpunkt. Notieren Sie sich auch die Portnummer. Sie benötigen sowohl den Endpunkt als auch die Portnummer, um die Verbindung zur DB-Instance herzustellen.

    
                            Der Endpunkt und Port einer DB-Instance
  5. Wenn Sie den Masterbenutzernamen finden müssen, wählen Sie die Registerkarte Konfiguration und den Wert für den Masterbenutzernamen an.

Um die Verbindungsinformationen für eine DB-Instance mithilfe des AWS CLI zu finden, rufen Sie den Befehl describe-db-instances auf. Fragen Sie beim Aufruf die DB-Instance-ID, den Endpunkt, den Port und den Masterbenutzernamen ab.

Für Linux, macOS oder Unix:

aws rds describe-db-instances \ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Für Windows:

aws rds describe-db-instances ^ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Die Ausgabe sollte in etwa wie folgt aussehen.

[ [ "mydb", "mydb.123456789012.us-east-1.rds.amazonaws.com", 3306, "admin" ], [ "myoracledb", "myoracledb.123456789012.us-east-1.rds.amazonaws.com", 1521, "dbadmin" ], [ "mypostgresqldb", "mypostgresqldb.123456789012.us-east-1.rds.amazonaws.com", 5432, "postgresadmin" ] ]

Rufen Sie den Operation DescribeDBInstances auf, um die Verbindungsinformationen für eine DB-Instance mithilfe der Amazon RDS-API zu finden. Suchen Sie in der Ausgabe die Werte für die Endpunktadresse, den Endpunktport und den Masterbenutzernamen.

Datenbankauthentifizierungsoptionen

Amazon RDS unterstützt die folgenden Möglichkeiten zur Authentifizierung von Datenbankbenutzern:

  • Passwortauthentifizierung – Ihre DB-Instance führt die gesamte Verwaltung von Benutzerkonten durch. Sie erstellen Benutzer und geben Kennwörter mit SQL-Anweisungen an. Die SQL-Anweisungen, die Sie verwenden können, hängen von Ihrer DB-Engine ab.

  • AWS Identity and Access Management-(IAM)-Datenbankauthentifizierung – Sie benötigen kein Passwort, um eine Verbindung mit einer DB-Instance herzustellen. Stattdessen verwenden Sie ein Authentifizierungstoken.

  • Kerberos-Authentifizierung – Sie verwenden die externe Authentifizierung von Datenbankbenutzern, die Kerberos und Microsoft Active Directory verwenden. Kerberos ist ein Netzwerk-Authentifizierungsprotokoll, das Tickets und symmetrische Schlüsselkryptographie verwendet, um die Notwendigkeit der Übertragung von Passwörtern über das Netzwerk zu vermeiden. Kerberos wurde in Active Directory integriert und wurde entwickelt, um Benutzer gegenüber Netzwerkressourcen wie Datenbanken zu authentifizieren.

IAM-Datenbankauthentifizierung und Kerberos-Authentifizierung sind nur für bestimmte DB-Engines und Versionen verfügbar.

Weitere Informationen finden Sie unter Datenbankauthentifizierung mit Amazon RDS.

Verschlüsselte Verbindungen

Sie können Secure Socket Layer (SSL) oder Transport Layer Security (TLS) aus Ihrer Anwendung verwenden, um eine Verbindung zu einer DB-Instance zu verschlüsseln. Jede DB-Engine hat einen eigenen Vorgang für die Implementierung von SSL/TLS. Weitere Informationen finden Sie unter Verwenden von SSL/TLS für die Verschlüsselung einer Verbindung zu einer DB-Instance.

Szenarien für den Zugriff auf eine DB-Instance in einer VPC

Mit Amazon Virtual Private Cloud (Amazon VPC) können Sie AWS-Ressourcen, wie z. B. Amazon-RDS-DB-Instances, in einer Virtual Private Cloud (VPC) starten. Wenn Sie Amazon VPC verwenden, haben Sie die Kontrolle über Ihre virtuelle Netzwerkumgebung. Sie können Ihren eigenen IP-Adressbereich auswählen, Subnetze erstellen sowie Routing-Tabellen und Zugriffskontrolllisten konfigurieren.

Eine VPC-Sicherheitsgruppe kontrolliert den Zugriff auf DB-Instances, die sich in einer VPC befinden. Jede VPC-Sicherheitsgruppenregel erlaubt einer bestimmten Quelle den Zugriff auf eine DB-Instance in einer VPC, die dieser VPC-Sicherheitsgruppe zugeteilt ist. Die Quelle kann ein Adressenbereich (zum Beispiel: 203.0.113.0/24) oder eine andere VPC-Sicherheitsgruppe sein. Wenn Sie eine VPC-Sicherheitsgruppe als Quelle festlegen, erlauben Sie eingehenden Datenverkehr von allen Instances (typischerweise Anwendungsserver), die Quell-VPC-Sicherheitsgruppe verwenden.

Bevor Sie versuchen, eine Verbindung zu Ihrer DB-Instance herzustellen, konfigurieren Sie Ihre VPC für Ihren Anwendungsfall. Im Folgenden finden Sie gängige Szenarien für den Zugriff auf eine DB-Instance in einer VPC:

  • Eine DB-Instance in einer VPC, auf die eine Amazon EC2-Instance in derselben VPC zugreift – Eine übliche Verwendung einer DB-Instance in einer VPC besteht darin, Daten mit einem Anwendungsserver zu teilen, der in einer EC2-Instance in derselben VPC ausgeführt wird. Die EC2-Instance kann einen Webserver mit einer Anwendung ausführen, die mit der DB-Instance interagiert.

  • Eine DB-Instance in einer VPC, auf die von einer EC2-Instance in einer anderen VPC zugegriffen wird. – In einigen Fällen befindet sich Ihre DB-Instance in einer anderen VPC als die EC2-Instance, mit der Sie darauf zugreifen. In diesem Fall können Sie VPC-Peering verwenden, um auf die DB-Instance zuzugreifen.

  • Eine DB-Instance in einer VPC, auf die von einer Clientanwendung über das Internet zugegriffen wird. – Damit eine Client-Anwendung über das Internet auf eine DB-Instance in einer VPC zugreifen kann, konfigurieren Sie eine VPC mit einem einzelnen öffentlichen Subnetz. Außerdem konfigurieren Sie ein Internet-Gateway für die Kommunikation über das Internet.

    Um eine Verbindung zu einer DB-Instance von außerhalb ihrer VPC herzustellen, muss die DB-Instance öffentlich zugänglich sein. Außerdem muss der Zugriff unter Verwendung der eingehenden Regeln der Sicherheitsgruppe der DB-Instance gewährt werden, und andere Anforderungen müssen erfüllt sein. Weitere Informationen finden Sie unter Verbindung zur Amazon RDS-DB-Instance kann nicht hergestellt werden.

  • Eine DB-Instance in einer VPC, auf die ein privates Netzwerk zugegriffen hat. – Wenn Ihre DB-Instance nicht öffentlich zugänglich ist, können Sie eine AWS Site-to-Site-VPN-Verbindung oder eine AWS Direct Connect-Verbindung verwenden, um über ein privates Netzwerk darauf zuzugreifen.

Weitere Informationen finden Sie unter Szenarien für den Zugriff auf eine DB-Instance in einer VPC.

Herstellen einer Verbindung mit einer DB-Instance, die eine bestimmte DB-Engine ausführt

Informationen zum Herstellen einer Verbindung mit einer DB-Instance, die eine bestimmte DB-Engine ausführt, finden Sie in den Anweisungen für Ihre DB-Engine:

Verwalten von Verbindungen mit RDS Proxy

Sie können auch Amazon-RDS-Proxy verwenden, um Verbindungen mit DB-Instances von RDS für MariaDB, RDS für Microsoft SQL Server, RDS für MySQL und RDS für PostgreSQL zu verwalten. RDS Proxy ermöglicht Anwendungen das Pooling und Freigeben von Datenbankverbindungen zur Verbesserung der Skalierbarkeit. Weitere Informationen finden Sie unter Verwenden von Amazon RDS Proxy.