| PostgreSQL: Das Offizielle Handbuch | ||||
|---|---|---|---|---|
| Zurück | Schnell zurück | Schnell nach vorne | Nach vorne | |
CREATE USER benutzername [ [ WITH ] option [ ... ] ]
wobei option Folgendes sein kann:
SYSID uid
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'passwort'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP gruppenname [, ...]
| VALID UNTIL 'abstime' CREATE USER erzeugt einen neuen Benutzer in einem PostgreSQL-Datenbankcluster. Weitere Informationen über Benutzerverwaltung und Authentifizierung erhalten Sie in Kapitel 17 und Kapitel 19. Um diesen Befehl verwenden zu können müssen Sie ein Datenbank-Superuser sein.
Der Name des Benutzers.
Mit der SYSID-Klausel kann man die PostgreSQL-Benutzer-ID des neuen Benutzers bestimmen. Das ist normalerweise nicht notwendig, kann aber nützlich sein, wenn Sie den Eigentümer eines Objekts ohne Eigentümer wiedererzeugen müssen.
Wenn keine ID angegeben ist, dann wird die höchste bisher vergebene ID plus eins, beginnend bei 100, verwendet.
Das Passwort des Benutzers. Wenn Sie keine Passwortauthentifizierung verwenden wollen, dann können Sie diese Option weglassen, aber dann wird der Benutzer nicht verbinden können, wenn Sie doch zur Passwortauthentifizierung wechseln. Das Passwort kann später mit ALTER USER gesetzt oder geändert werden.
Diese Optionen bestimmen, ob das Passwort im Systemkatalog verschlüsselt gespeichert wird. (Wenn keines der beiden angegeben wurde, dann wird das Standardverhalten vom Konfigurationsparameter password_encryption bestimmt.) Wenn das angegebene Passwort bereits im verschlüsselten MD5-Format ist, dann wird es so wie es ist verschlüsselt gespeichert, egal ob ENCRYPTED oder UNENCRYPTED angegeben wurde (da das System das angegebene verschlüsselte Passwort nicht entschlüsseln kann). Dadurch können verschlüsselte Passwörter aus einer Sicherungsdatei wiederhergestellt werden.
Beachten Sie, dass ältere Clients den MD5-Authentifizierungsmechanismus, der bei verschlüsselt gespeicherten Passwörtern verwendet werden muss, möglicherweise nicht unterstützen.
Diese Klauseln bestimmen, ob der Benutzer Datenbanken erzeugen darf. Wenn CREATEDB angegeben ist, dann wird dem Benutzer gestattet, seine eigenen Datenbanken zu erzeugen. Mit NOCREATEDB wird dem Benutzer nicht gestattet, neue Datenbanken zu erzeugen. Wenn die Klausel weggelassen wird, dann ist die Voreinstellung NOCREATEDB.
Diese Klauseln bestimmen, ob der Benutzer selbst neue Benutzer erzeugen darf. Diese Option macht den Benutzer auch zum Superuser, der alle Zugriffsbeschränkungen umgehen kann. Wenn die Klausel weggelassen wird, dann ist die Voreinstellung NOCREATEUSER.
Ein Name einer Gruppe, in die der neue Benutzer als Mitglied eingefügt werden soll. Es können mehrere Gruppennamen angegeben werden.
Die Klausel VALID UNTIL gibt die Zeit an, nach der das Passwort des Benutzer nicht mehr gültig ist. Wenn die Klausel weggelassen wird, dann ist das Passwort des Benutzers unbegrenzt gültig.
PostgreSQL enthält ein Programm createuser, das die selbe Funktionalität wie CREATE USER hat (und es intern auch aufruft), aber von der Shell aus aufgerufen werden kann.
Erzeuge einen Benutzer ohne Passwort:
CREATE USER jonathan;
Erzeuge einen Benutzer mit einem Passwort:
CREATE USER davide WITH PASSWORD 'jw8s0F4';
Erzeuge einen Benutzer mit einem Passwort, dass bis zum Ende von 2004 gültig ist. Nachdem 2005 eine Sekunde alt ist, ist das Passwort nicht mehr gültig.
CREATE USER miriam WITH PASSWORD 'jw8s0F4' VALID UNTIL '2005-01-01';
Erzeuge einen Benutzer, der Datenbanken erzeugen kann:
CREATE USER manuel WITH PASSWORD 'jw8s0F4' CREATEDB;
Der Befehl CREATE USER ist eine PostgreSQL-Erweiterung. Der SQL-Standard überlässt die Definition der Benutzer der Implementierung.
| Zurück | Zum Anfang | Nach vorne |
| CREATE TYPE | Nach oben | CREATE VIEW |