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. Kurze Erläuterungen finden Sie in den folgenden Beschreibungen:

  • Rolle: Bezeichnung der obersten Ebene, die sowohl Datenbanknutzer als auch Gruppen von Datenbanknutzern in einem Cluster beschreibt. Rollen ermöglichen und beschränken den Zugriff auf Datenbankobjekte wie Tabellen und Funktionen.

  • Nutzer: Rolle mit dem Attribut LOGIN. Nutzer können sich authentifizieren und in AlloyDB-Datenbankclustern anmelden.

  • Gruppe: Rolle, die einem oder mehreren Nutzern zugewiesen wird. Mit Gruppen können Sie die Berechtigungen steuern, die viele Nutzer insgesamt haben.

So funktioniert die Datenbankauthentifizierung

Für die Authentifizierung und Anmeldung bei Ihren AlloyDB-Datenbankclustern haben Sie zwei Möglichkeiten:

  • Standardmäßige passwortbasierte PostgreSQL-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: Datenbanknutzer können sich 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 in AlloyDB verfügbar sind.

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

In den folgenden Unterabschnitten wird erläutert, wofür einige dieser Rollen vorgesehen sind.

alloydbsuperuser-Gruppenrolle

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

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

Als verwalteter Dienst können Sie Nutzern in AlloyDB nicht die PostgreSQL-Rolle superuser zuweisen. 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, wird alloydbimportexport mit den minimalen Berechtigungen erstellt, 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 Standard-alloydbimportexport-Nutzer 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.

alloydbagent-Nutzerrolle

Die Rolle alloydbagent ist eine interne AlloyDB-Systemrolle. Sie wird vom AlloyDB-Dienst verwaltet und kann nicht manuell für Datenbankkonten gewährt werden. So wird die ordnungsgemäße Funktion der Datenbank und ihrer Funktionen sichergestellt.

alloydbreplica-Nutzerrolle

Die Rolle alloydbreplica ist eine interne AlloyDB-Systemrolle. Sie wird vom AlloyDB-Dienst verwaltet und kann nicht manuell für Datenbankkonten gewährt werden. So wird die ordnungsgemäße Funktion der Datenbank und ihrer Funktionen sichergestellt.

alloydbiamuser-Gruppenrolle

Datenbanknutzer in der Gruppe alloydbiamuser authentifizieren sich bei einer AlloyDB-Instanz mit IAM anstelle der standardmäßigen passwortbasierten Authentifizierung von PostgreSQL.

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

Nächste Schritte