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.