Verbindungsübersicht

Auf dieser Seite wird beschrieben, wie Sie eine Verbindung zu Datenbanken herstellen, die von AlloyDB for PostgreSQL bereitgestellt werden:

  • Netzwerk: AlloyDB-Instanzen verwenden öffentliche oder private IP-Adressen in einer Virtual Private Cloud (VPC). Es gibt verschiedene Methoden, um sichere Verbindungen von Anwendungen herzustellen, die außerhalb des VPC ausgeführt werden.

  • Autorisierung: Mit dem AlloyDB Auth-Proxy können Sie mithilfe der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) steuern, wer Zugriff auf Ihre Daten hat. Mit der Firewall Ihrer VPC können Sie den Zugriff auf AlloyDB-Ressourcen weiter optimieren.

  • Authentifizierung: Verwenden Sie standardmäßige PostgreSQL-Nutzerauthentifizierungsmethoden, um sich in Ihren Instanzen anzumelden. AlloyDB unterstützt auch die IAM-basierte Authentifizierung mithilfe von Standard-PostgreSQL-Nutzerrollen.

Netzwerk

Auch wenn eine AlloyDB-Instanz viele Knoten enthält, stellen Ihre Anwendungen eine Verbindung über eine einzelne statische IP-Adresse her. Diese Adresse kann entweder eine private Adresse für das VPC sein, die Sie beim ersten Einrichten des Clusters einer Instanz angeben, oder eine öffentliche IP-Adresse, die direkte Verbindungen von außerhalb des VPC zulässt.

Private IP-Adresse

Wenn Sie AlloyDB mit einer privaten IP-Adresse konfigurieren, erhält Ihre Instanz eine private IP-Adresse innerhalb Ihres VPC.

Private IP-Adressen wirken sich auf zwei Arten auf Verbindungen zu Ihrer Anwendung aus:

  • Anwendungen, die an anderer Stelle innerhalb der VPC Ihres Projekts ausgeführt werden, können ohne zusätzliche Schritte oder Ressourcen eine Verbindung zur Instanz oder zu einem Proxy herstellen, der die Instanz repräsentiert.

    Im Hilfeartikel Psql-Client mit einer Instanz verbinden wird beispielsweise beschrieben, wie Sie eine Verbindung zu Ihrer AlloyDB-Instanz herstellen, indem Sie das psql-Befehlszeilenprogramm auf einer Compute Engine-VM in Ihrem VPC ausführen.

  • Für Anwendungen, die außerhalb der VPC ausgeführt werden, ist ein Zwischendienst erforderlich, um eine Verbindung zur AlloyDB-Instanz herzustellen. Dazu gehören Proxydienste auf einer VM innerhalb der VPC der Instanz oder die Verwendung andererGoogle Cloud -Produkte, um eine dauerhafte Verbindung zwischen Ihrer Anwendung und Ihrer VPC herzustellen.

    Weitere Informationen finden Sie unter Verbindung zu einem Cluster von außerhalb seines VPC herstellen.

Verbindungen über private IP-Adressen bieten in der Regel eine geringere Latenz und eingeschränkte Angriffsvektoren, da sie keine Übertragung über das Internet erfordern.

Weitere Informationen zu privaten IP-Adressen in AlloyDB finden Sie im Überblick über private IP-Adressen.

Öffentliche IP-Adresse

Wenn Sie AlloyDB mit einer öffentlichen IP-Adresse konfigurieren, erhält Ihre Instanz eine öffentliche IP-Adresse für eingehende Verbindungen, auf die über das öffentliche Internet zugegriffen werden kann. Optional können Sie autorisierte externe Netzwerke verwenden, um einen Bereich von IP-Adressen im CIDR-Format anzugeben, die auf Ihre Instanz zugreifen können.

Wir empfehlen die Verwendung einer öffentlichen IP-Adresse mit AlloyDB Language Connectors, um sichere Verbindungen zwischen dem Client und Ihrer Instanz zu ermöglichen.

Weitere Informationen zum Hinzufügen einer öffentlichen IP-Adresse und autorisierter externer Netzwerke zu Ihrer Instanz finden Sie unter Verbindung über öffentliche IP-Adresse herstellen.

AlloyDB unterstützt auch ausgehende Verbindungen zu Ihrer Instanz. Sie können eine ausgehende öffentliche IP-Adresse für die Migration einer Datenbank direkt aus einer externen Quelle in AlloyDB mit dem Database Migration Service oder selbstverwalteten pglogical-Umgebungen aktivieren. AlloyDB unterstützt auch die Verbindung zu einer externen Datenquelle über Fremddaten-Wrapper wie postgres_fdw oder oracle_fdw.

Weitere Informationen zum Aktivieren öffentlicher IP-Adressen für ausgehende Verbindungen finden Sie unter Ausgehenden Verbindungen zu einer Instanz hinzufügen.

Autorisierung

Sie können den Zugriff auf einen AlloyDB-Cluster mithilfe von AlloyDB-Sprach-Connectors, dem AlloyDB Auth-Proxy oder mit VPC-Firewallregeln steuern.

AlloyDB Language Connectors

AlloyDB Language Connectors sind Clientbibliotheken, die beim Herstellen einer Verbindung zu einem AlloyDB-Cluster eine automatische mTLS-Verschlüsselung mit TLS 1.3 und eine IAM-Autorisierung ermöglichen.

Sie können diese Bibliotheken direkt in ihren jeweiligen Programmiersprachen verwenden. Sie bieten die gleichen Funktionen wie der AlloyDB-Proxy, ohne dass ein externer Prozess erforderlich ist. Dies bietet eine höhere Sicherheit und geringere Konfigurationsanforderungen für die Verbindung mit AlloyDB.

Weitere Informationen finden Sie unter AlloyDB Language Connectors – Übersicht.

Zugriff mit IAM und dem AlloyDB Auth-Proxy steuern

Sie können zwar über die IP-Adresse direkt eine Verbindung zu einer Instanz herstellen, wir empfehlen jedoch, in Produktionsumgebungen den AlloyDB Auth-Proxy zu verwenden. Sie bietet eine IAM-basierte Zugriffssteuerung und eine Ende-zu-Ende-Verschlüsselung zwischen dem Proxy und Ihrem Cluster.

Weitere Informationen finden Sie unter AlloyDB Auth-Proxy.

VPC-Zugriff mit Firewallregeln einschränken

Wie bei jedem cloudbasierten Projekt sollten Sie die Firewallregeln Ihres VPC so anpassen, dass der Netzwerkzugriff nur auf die IP-Bereiche oder Subnetzwerke beschränkt wird, von denen aus Ihre Anwendungen eine Verbindung herstellen. Das ist besonders wichtig bei externen Anwendungen, wie im Abschnitt Verbindung zu einem Cluster von außerhalb seiner VPC herstellen beschrieben.

Weitere Informationen zum Konfigurieren der Firewall Ihres VPC finden Sie unter VPC-Firewallregeln.

Authentifizierung

AlloyDB unterstützt zwei Arten von Datenbanknutzern, die sich jeweils auf unterschiedliche Weise bei Ihren Datenbanken authentifizieren:

  • Standard-PostgreSQL-Nutzerrollen werden mit einem Nutzernamen und Passwort authentifiziert. Sie verwalten diese Konten mit den üblichen PostgreSQL-Methoden zur Nutzerverwaltung. Weitere Informationen finden Sie unter AlloyDB-Nutzerrollen verwalten.

  • IAM-Nutzer- und Dienstkonten werden mit OAuth 2.0-Tokens als Datenbanknutzer authentifiziert. Sie verwalten diese Konten über dasGoogle Cloud IAM-System. Weitere Informationen finden Sie unter IAM-Authentifizierung verwalten.

Nach der Authentifizierung bei einer AlloyDB-Instanz kann eine Anwendung die Instanz wie einen gewöhnlichen PostgreSQL-Server behandeln. Nachdem Sie Netzwerk- und Autorisierungsrouten zu einer Instanz eingerichtet haben, können Sie sich mithilfe standardmäßiger PostgreSQL-Methoden in einer Instanz anmelden und auf Ihre Daten zugreifen. Das gilt unabhängig davon, ob Sie sich manuell mit einem Tool wie psql anmelden oder programmatisch über eine PostgreSQL-Codebibliothek eine Verbindung zu Ihrer Datenbank herstellen.

Normalerweise melden Sie sich bei der ersten Authentifizierung mit einem neuen AlloyDB-Cluster als postgres-Nutzer mit dem Passwort an, das Sie beim Erstellen des Clusters angegeben haben. Anschließend sollten Sie Datenbanknutzer ohne Administratorberechtigungen für die Verwendung Ihrer Anwendung erstellen.

Nächste Schritte