Herstellen einer Verbindung zu PostgreSQL mit Kerberos-Authentifizierung - 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.

Herstellen einer Verbindung zu PostgreSQL mit Kerberos-Authentifizierung

Sie können sich über die pgAdmin-Schnittstelle oder über eine Befehlszeilenschnittstelle wie psql per Kerberos-Authentifizierung mit PostgreSQL verbinden. Weitere Informationen zum Herstellen von Verbindungen finden Sie unter Herstellen einer Verbindung zu einer DB-Instance, in der die PostgreSQL-Datenbank-Engine ausgeführt wird . Informationen zum Abrufen des Endpunkts, der Portnummer und anderer Details, die für die Verbindung benötigt werden, finden Sie unter Stellen Sie eine Connect zu einer SQL Postgre-DB-Instance her.

Anmerkung

GSSAPI-Authentifizierung und Verschlüsselung in PostgreSQL werden von der Kerberos-Bibliothek implementiert. libkrb5.so Funktionen wie postgres_fdw diese nutzen dieselbe Bibliothek dblink auch für ausgehende Verbindungen mit Kerberos-Authentifizierung oder Verschlüsselung.

Um pgAdmin für die Verbindung zu PostgreSQL mit Kerberos-Authentifizierung zu verwenden, führen Sie die folgenden Schritte aus:

  1. Starten Sie die Anwendung pgAdmin auf Ihrem Client-Computer.

  2. Klicken Sie auf der Registerkarte Dashboard auf Add New Server (Neuen Server hinzufügen).

  3. Geben Sie im Dialogfeld (Erstellen – Server) auf der Registerkarte Allgemein einen Namen für den Server in pgAdmin ein.

  4. Geben Sie auf der Registerkarte Connection (Verbindung) die folgenden Informationen aus der Datenbank von RDS für PostgreSQL ein:

    • Geben Sie für Host den Endpunkt für die DB-Instance von RDS für PostgreSQL Ein Endpunkt sieht in etwa wie folgt aus:

      RDS-DB-instance.111122223333.aws-region.rds.amazonaws.com

      Um von einem Windows-Client aus eine Verbindung zu einem lokalen Microsoft Active Directory herzustellen, verwenden Sie den Domänennamen des AWS Managed Active Directory anstelle des rds.amazonaws.com Host-Endpunkts. Nehmen wir zum Beispiel an, der Domänenname für das AWS verwaltete Active Directory lautetcorp.example.com. Für Host würde der Endpunkt wie folgt angegeben werden:

      RDS-DB-instance.111122223333.aws-region.corp.example.com
    • Geben Sie unter Port den zugewiesenen Port ein.

    • Geben Sie unter Wartungsdatenbank den Namen der initialen Datenbank ein, mit der sich der Client verbinden soll.

    • Geben Sie unter Benutzername den Benutzernamen ein, den Sie für die Kerberos-Authentifizierung in Schritt 7: Erstellen von PostgreSQL-Benutzern für Ihre Kerberos-Prinzipale eingegeben haben.

  5. Wählen Sie Speichern.

Um psql für die Verbindung mit PostgreSQL mit Kerberos-Authentifizierung zu verwenden, führen Sie die folgenden Schritte aus:

  1. Führen Sie an einer Eingabeaufforderung den folgenden Befehl aus.

    kinit username

    Ersetzen Sie username durch den Benutzernamen. Geben Sie in der Eingabeaufforderung das im Microsoft Active Directory für den Benutzer gespeicherte Passwort ein.

  2. Wenn die eine öffentlich zugängliche VPC verwendet, geben Sie die IP-Adresse für Ihren in Ihre /etc/hosts Datei auf dem Client ein. EC2 Die folgenden Befehle rufen beispielsweise die IP-Adresse ab und fügen sie dann in die /etc/hosts-Datei ein.

    % dig +short PostgreSQL-endpoint.AWS-Region.rds.amazonaws.com ;; Truncated, retrying in TCP mode. ec2-34-210-197-118.AWS-Region.compute.amazonaws.com. 34.210.197.118 % echo " 34.210.197.118 PostgreSQL-endpoint.AWS-Region.rds.amazonaws.com" >> /etc/hosts

    Wenn Sie eine lokale Microsoft Active Directory von einem Windows-Client verwenden, müssen Sie eine Verbindung über einen speziellen Endpunkt herstellen. Anstatt die Amazon-Domain rds.amazonaws.com im Host-Endpunkt zu verwenden, verwenden Sie den Domainnamen des AWS Managed Active Directory.

    Nehmen wir zum Beispiel an, der Domainname für Ihr AWS Managed Active Directory lautetcorp.example.com. Verwenden Sie dann das Format PostgreSQL-endpoint.AWS-Region.corp.example.com für den Endpunkt und legen Sie es in der /etc/hosts-Datei ab.

    % echo " 34.210.197.118 PostgreSQL-endpoint.AWS-Region.corp.example.com" >> /etc/hosts
  3. Verwenden Sie den folgenden psql-Befehl, um sich bei einer PostgreSQL-DB-Instance anzumelden, der/die in Active Directory integriert ist.

    psql -U username@CORP.EXAMPLE.COM -p 5432 -h PostgreSQL-endpoint.AWS-Region.rds.amazonaws.com postgres

    Um sich beim PostgreSQL DB-Cluster von einem Windows-Client aus unter Verwendung eines lokalen Active Directory anzumelden, verwenden Sie den folgenden psql-Befehl mit dem Domänennamen aus dem vorhergehenden Schritt (corp.example.com):

    psql -U username@CORP.EXAMPLE.COM -p 5432 -h PostgreSQL-endpoint.AWS-Region.corp.example.com postgres