Datenbanknutzerverwaltung in AlloyDB for PostgreSQL

Auf dieser Seite finden Sie einen Überblick darüber, wie Sie Datenbanknutzer in AlloyDB for PostgreSQL verwalten und die IAM-Authentifizierung (Identity and Access Management) für diese Datenbanknutzer aktivieren.

So funktioniert die Verwaltung von Datenbanknutzern

AlloyDB verwendet dieselben Konzepte für Rollen, Nutzer und Gruppen wie PostgreSQL. Eine kurze Erklärung finden Sie in den folgenden Beschreibungen:

  • Rolle: Eine oberste Ebene, die sowohl Datenbanknutzer als auch Datenbanknutzergruppen in einem Cluster beschreibt. Rollen gewähren und schränken den Zugriff auf Datenbankobjekte wie Tabellen und Funktionen ein.

  • Nutzer: Rolle, der das Attribut LOGIN zugewiesen ist. Nutzer können sich authentifizieren und in AlloyDB-Datenbankclustern anmelden.

  • Gruppe: Rolle, die einem oder mehreren Nutzern gewährt wird. Mit Gruppen können Sie die Berechtigungen steuern, die viele Nutzer gemeinsam haben.

So funktioniert die Datenbankauthentifizierung

Sie haben zwei Möglichkeiten, sich in Ihren AlloyDB-Datenbankclustern zu authentifizieren und anzumelden:

  • Standardmäßige PostgreSQL-passwortbasierte Authentifizierung: Die Nutzeridentität wird überprüft, indem die angegebenen Anmeldedaten mit gespeicherten, gehashten Passwörtern verglichen werden. Zu den unterstützten Methoden gehören md5, scram-sha-256 und password.
  • IAM-Authentifizierung: Damit können sich Datenbanknutzer mit IAM authentifizieren, um die Sicherheit zu erhöhen und die Zugriffssteuerung für andereGoogle Cloud Dienste zu zentralisieren.

Vordefinierte Rollen

PostgreSQL bietet vordefinierte Rollen mit verschiedenen Berechtigungen. Zusätzlich zu diesen vordefinierten Rollen bietet AlloyDB mehrere weitere vordefinierte Nutzer- und Gruppenrollen.

In den folgenden Tabellen sind die Rollen und Rollenberechtigungen aufgeführt, die AlloyDB bietet.

Rollenname Berechtigungen
alloydbsuperuser CREATEROLE, CREATEDB und LOGIN.
postgres CREATEROLE, CREATEDB und LOGIN.
alloydbimportexport CREATEROLE und CREATEDB.
alloydbagent CREATEROLE und CREATEDB.
alloydbreplica REPLICATION
alloydbiamuser Diese Rolle hat standardmäßig keine Berechtigungen.

In den folgenden Abschnitten wird erläutert, wozu einige dieser Rollen dienen.

alloydbsuperuser-Gruppenrolle

Mit alloydbsuperuser können Sie Ihr Datenbanksystem einrichten und andere Aufgaben eines Superusers ausführen. Diese Rolle hat die folgenden Berechtigungen:

  • Erweiterungen erstellen, die Superuser-Berechtigungen erfordern
  • Ereignistrigger erstellen
  • Replikationsnutzer erstellen
  • Replikationspublikationen und -abos erstellen

Da AlloyDB ein verwalteter Dienst ist, können Sie Nutzern nicht die PostgreSQL-Rolle superuser gewähren. Stattdessen können Sie jedem Datenbanknutzer AlloyDB-Superuser-Berechtigungen gewähren, indem Sie ihm die Rolle alloydbsuperuser zuweisen.

postgres-Nutzerrolle

Die Nutzerrolle postgres ist Teil von alloydbsuperuser. Wenn Sie einen AlloyDB-Cluster erstellen, weisen Sie postgres ein Passwort zu. Anschließend melden Sie sich mit postgres in Ihrem System an, um Aufgaben wie das Erstellen von Datenbanken oder zusätzlichen Rollen auszuführen.

alloydbimportexport-Nutzerrolle

Wenn Sie einen AlloyDB-Cluster erstellen, erstellt AlloyDB alloydbimportexport mit den minimalen Berechtigungen, die für Import- und Exportvorgänge erforderlich sind.

Sie können Ihre eigenen Nutzer erstellen, um diese Vorgänge auszuführen. Wenn Sie keinen benutzerdefinierten alloydbimportexport-Nutzer erstellen, verwendet das System den Standardnutzer alloydbimportexport für Import- und Exportvorgänge.

alloydbimportexport ist ein Systemnutzer. Das bedeutet, dass Sie sich nicht direkt mit dem Nutzer alloydbimportexport anmelden oder andere Vorgänge in Ihren PostgreSQL-Datenbanken ausführen können.

alloydbiamuser-Gruppenrolle

Datenbanknutzer in der Gruppe alloydbiamuser authentifizieren sich mit einer AlloyDB-Instanz über IAM, anstatt die standardmäßige passwortbasierte PostgreSQL-Authentifizierung zu verwenden.

In AlloyDB können Sie Nutzern keine alloydbiamuser-Berechtigung mit dem PostgreSQL-Befehl GRANT oder ähnlichen Methoden gewähren. Stattdessen können Sie die Verwaltungstools von AlloyDB verwenden, um IAM-basierte Datenbanknutzer zu erstellen und zu verwalten. Weitere Informationen finden Sie unter IAM-Authentifizierung verwalten.

Nächste Schritte