So erstellen Sie einen Benutzer in PostgreSQL Verwendung von PgAdmin

โšก Intelligente Zusammenfassung

Erstellen eines Benutzers in PostgreSQL Dies kann visuell in pgAdmin oder mit dem Befehl CREATE USER in der SQL-Shell erfolgen. AnschlieรŸend kรถnnen Sie Berechtigungen mit GRANT erteilen, Rollen mit ALTER USER รคndern und Konten mit DROP USER lรถschen.

  • ๐Ÿ–ฑ๏ธ In pgAdmin erstellen: Klicken Sie mit der rechten Maustaste auf โ€žAnmelden/Gruppenrollenโ€œ, geben Sie einen Namen ein, legen Sie ein Passwort und Berechtigungen fest und speichern Sie anschlieรŸend, um den Benutzer zu erstellen.
  • ๐Ÿ’ป Befehl zum Erstellen eines Benutzers: In der SQL-Shell legt der Befehl CREATE USER name WITH options Benutzername, Superuser und Passwort in einem einzigen Befehl fest.
  • ๐Ÿ”‘ Zugriff gewรคhren: GRANT ALL PRIVILEGES ON DATABASE db TO user gewรคhrt einem bestehenden Benutzer Zugriff auf eine Datenbank.
  • ๐Ÿ”ง BENUTZER ร„NDERN: Mit ALTER USER werden die Berechtigungen einer Rolle angepasst, indem Berechtigungen wie SUPERUSER hinzugefรผgt oder entzogen werden.
  • ๐Ÿ—‘๏ธ DROP-BENUTZER: DROP USER entfernt ein Konto, jedoch erst, nachdem es keine Datenbankobjekte mehr besitzt.
  • ๐Ÿงพ Rolle vs. Benutzer: CREATE USER ist standardmรครŸig auf LOGIN eingestellt, wรคhrend CREATE ROLE standardmรครŸig auf NOLOGIN eingestellt ist; ansonsten sind sie identisch.

So erstellen Sie einen Benutzer in PostgreSQL Verwendung von PgAdmin

So erstellen Sie PostgreSQL Benutzer in PgAdmin

Nachfolgend finden Sie eine Schritt-fรผr-Schritt-Anleitung zum Erstellen von Benutzern in PostgreSQL PgAdmin:

Schritt 1) Klicken Sie mit der rechten Maustaste auf Anmelden

Klicken Sie im ersten Schritt mit der rechten Maustaste auf Anmeldegruppenrolle -> Erstellen -> Klicken Sie auf Anmeldegruppenrolleโ€ฆ

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 2) Erstellen Sie eine Anmelde-/Gruppenrolle

Geben Sie nun den Namen fรผr das Login ein

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 3) Klicken Sie auf โ€žDefinitionโ€œ und geben Sie die Details ein.

  1. Passwort eingeben
  2. Ein Ablaufdatum fรผr das Konto

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 4) Der Abschnitt โ€žPrivilegienโ€œ.

  1. TogglKlicken Sie auf die Schaltflรคche โ€žAnmelden mรถglichโ€œ auf โ€žJAโ€œ.
  2. Toggle Superuser auf JA

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 5) Das SQL Abschnitt

  1. Sie sehen die SQL-Abfrage zum Erstellen eines Benutzers gemรครŸ den in den vorherigen Schritten getroffenen Auswahlen
  2. Klicken Sie auf die Schaltflรคche Speichern

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 6) Rolle wird erstellt

Jetzt wird die Rolle im Objektbaum widergespiegelt.

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 7) Erstellen Sie Datenbank

Weisen Sie ihm nun den Besitzer myguru zu, wie im folgenden Beispiel zum Erstellen eines Postgres-Benutzers gezeigt.

Erschaffung PostgreSQL Benutzer in PgAdmin

Schritt 8) Die Befehlszeile

Jetzt kรถnnen Sie sehen, dass der Besitzer Myguru ist.

Erschaffung PostgreSQL Benutzer in PgAdmin

PostgreSQL Erstellen Sie eine Benutzer-SQLShell (Befehlszeile)

Sie kรถnnen einen Benutzer erstellen, indem Sie den Befehlszeilenbefehl verwenden

BENUTZER ERSTELLEN

Diese Postgres-Methode zum Erstellen eines Benutzers mit Passwort ist fรผr Programmierer und Administratoren praktischer, da sie Zugriff auf die Konsole von haben PostgreSQL Server. Darรผber hinaus mรผssen sie Postgres-Benutzer mit einem einzigen Befehl erstellen und ausfรผhren, anstatt sich anzumelden und die Benutzeroberflรคche zu verwenden PostgreSQL Kunden.

Syntax:

CREATE USER name [ WITH ] option [ ... ]

where option can be:

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
    | VALID UNTIL 'timestamp'
    | IN ROLE role_name [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid

Ejemplo:

CREATE USER tom;

wird einen Benutzer Tom erstellen

CREATE USER tom WITH SUPERUSER;

Es wird ein Benutzer namens โ€žtomโ€œ mit Superuser-Rechten erstellt. Schauen wir uns das folgende Beispiel an.

Schritt 1) Wir erstellen einen Superuser, der bis 3 gรผltig istrd April 2025, 11:50:38 IST. Geben Sie folgenden Befehl ein.

CREATE USER mytest WITH
	LOGIN
	SUPERUSER
	CREATEDB
	CREATEROLE
	INHERIT
	NOREPLICATION
	CONNECTION LIMIT -1
	VALID UNTIL '2025-04-03T11:50:38+05:30'
	PASSWORD '123456';

Erstellen Sie eine Benutzer-SQLShell

Schritt 2) Geben Sie den Befehl \du in die Checkliste der Benutzer ein

Erstellen Sie eine Benutzer-SQLShell

Anmerkungen: Der Befehl CREATE USER entspricht dem Befehl CREATE ROLE. Der Unterschied zwischen den beiden Befehlen besteht darin, dass der PostgreSQL-Befehl CREATE USER standardmรครŸig den Status LOGIN annimmt, wรคhrend bei Verwendung der Option CREATE ROLE der Status NOLOGIN angenommen wird.

Fรผgen Sie einen vorhandenen Benutzer zu einer Datenbank hinzu

Sie kรถnnen einem Benutzer Berechtigungen fรผr den Zugriff auf eine Datenbank erteilen.

Beispiel: Wir gewรคhren dem Benutzer โ€žmytestโ€œ alle Berechtigungen fรผr den Benutzer guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Fรผgen Sie einen vorhandenen Benutzer zu einer Datenbank hinzu

Nach der Ausfรผhrung des PostgreSQL Wenn Sie den Befehl โ€žBenutzer hinzufรผgenโ€œ hinzufรผgen, kann der Benutzer mit den angegebenen Berechtigungen auf die Datenbank zugreifen.

Der Befehl GRANT ist sehr mรคchtig. Sie kรถnnen einem Benutzer detaillierte Berechtigungen wie โ€žAuswรคhlenโ€œ, โ€žEinfรผgenโ€œ und โ€žAktualisierenโ€œ erteilen.

PostgreSQL BENUTZER wird aktualisiert

Vorhandene Benutzerberechtigungen รคndern

Da nun unser neuer Benutzer โ€žmytestโ€œ existiert, kรถnnen Sie mit ALTER USER die dem Bibliothekar erteilten Berechtigungen รคndern.

Das Format von ALTER USER Postgres enthรคlt den Namen des Benutzers, gefolgt von einigen Optionen zur Angabe PostgreSQL Welche zulรคssigen ร„nderungen sind vorzunehmen:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

RevBerechtigungen akzeptieren

Sie mรผssen diesen Befehl verwenden, wenn Sie einen Fehler machen und fรคlschlicherweise eine Berechtigung erteilen, die Sie mรถglicherweise widerrufen mรถchten. Sie kรถnnen den Befehl ALTER USER ohne Prรคfix vor den permissiven Optionen verwenden.

Zum Beispiel kรถnnen wir den SUPERUSER-Status aus mytest entfernen, wie folgt:

ALTER USER mytest WITH NOSUPERUSER;

Wenn Sie \du verwenden, werden Sie feststellen, dass die Superuser-Berechtigung entfernt wird.

RevBerechtigungen akzeptieren

Berechtigung zuweisen

Sie kรถnnen die SUPERUSER-Berechtigung des Benutzers โ€žmytestโ€œ mit dem folgenden Befehl zurรผckerlangen.

ALTER USER mytest WITH SUPERUSER;

Wenn Sie \du verwenden, werden Sie feststellen, dass die Superuser-Berechtigung hinzugefรผgt wird.

Berechtigung zuweisen

PostgreSQL Benutzer lรถschen

Sie kรถnnen โ€žBeliebigen Benutzer lรถschenโ€œ verwenden, wenn Sie sicher sind, dass der bestimmte Benutzer nicht mehr fรผr Ihre Datenbank vorhanden ist. Beachten Sie, dass das Lรถschen der Benutzer niemals Auswirkungen auf die eigentliche Datenbank hat.

Syntax: DROP USER [user]

Um einen Benutzer zu lรถschen, mรผssen Sie sicherstellen, dass der Benutzer Eigentรผmer der Datenbank ist. Andernfalls erhalten Sie mรถglicherweise eine Fehlermeldung.

ERROR:  role "username" cannot be dropped because some objects depend on it

Ejemplo:

  1. Das Konto โ€žmyguruโ€œ ist Eigentรผmer der Datenbank โ€ždemoDBโ€œ.
  2. Geben Sie den Befehl DROP USER myguru ein
  3. Fehler wird angezeigt

PostgreSQL Benutzer lรถschen

Sobald wir den Datenbankeigentรผmer รคndern, kann der Benutzer gelรถscht werden

PostgreSQL Benutzer lรถschen

Spickzettel

Hier sind wichtige Befehle

Befehle Beschreibung
CREATE USER [user]
Befehl zum Erstellen eines Benutzers
ALTER USER role_specification
Vorhandene Benutzerberechtigungen รคndern
ALTER USER [user]
RevBerechtigungen akzeptieren
ALTER USER [user name] WITH SUPERUSER
Berechtigung zuweisen
DROP USER [user]
Befehl zum Lรถschen eines Benutzers

Hรคufig gestellte Fragen

Fรผhren Sie in der psql-Shell den Befehl `\du` aus, um alle Rollen und ihre Attribute aufzulisten. Alternativ kรถnnen Sie den Systemkatalog mit `SELECT rolname FROM pg_roles` abfragen, um dieselben Informationen programmatisch zu erhalten.

Verwenden Sie ALTER USER, beispielsweise ALTER USER mytest WITH PASSWORD 'neuesPasswort'. Die ร„nderung wird sofort wirksam. Passwรถrter werden verschlรผsselt gespeichert und kรถnnen nur von Administratoren oder dem Benutzer selbst geรคndert werden.

In PostgreSQLBenutzer und Rollen sind dasselbe Objekt. CREATE USER erstellt eine Rolle, die sich standardmรครŸig anmelden kann, wรคhrend CREATE ROLE eine Rolle erstellt, die sich nur anmelden kann, wenn Sie das Attribut LOGIN hinzufรผgen.

KI kann aus einer einfachen Beschreibung der benรถtigten Zugriffsrechte CREATE USER-, GRANT- und ALTER USER-Anweisungen generieren und die einzelnen Berechtigungen erlรคutern. Dies hilft Ihnen, das Prinzip der minimalen Berechtigungen anzuwenden, ohne die Syntax auswendig lernen zu mรผssen.

Ja. KI kann detaillierte GRANT-Befehle vorschlagen, die nur die erforderlichen Berechtigungen erteilen, vor der Gewรคhrung umfassender Superuser-Zugriffe warnen und die Verwendung von Rollen zur Gruppierung von Berechtigungen fรผr eine einfachere und sicherere Verwaltung empfehlen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: