ALTER USER

Name

ALTER USER -- ändert ein Datenbankbenutzerkonto

Synopsis

ALTER USER benutzername [ [ WITH ] option [ ... ] ]

wobei option Folgendes sein kann:

    [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'passwort' 
    | CREATEDB | NOCREATEDB
    | CREATEUSER | NOCREATEUSER 
    | VALID UNTIL 'abstime'

ALTER USER benutzername SET parameter { TO | = } { value | DEFAULT }
ALTER USER benutzername RESET parameter

Beschreibung

ALTER USER ändert die Attribute eines PostgreSQL-Benutzerkontos. Attribute, die nicht im Befehl erwähnt werden, behalten ihre bisherigen Einstellungen.

Die erste Variante dieses Befehls in der Synopsis ändert bestimmte globale Benutzerprivilegien und Authentifizierungseinstellungen. (Einzelheiten siehe unten.) Nur Datenbank-Superuser können diese Privilegien und die Ablaufzeit des Passworts mit diesem Befehl ändern. Einfache Benutzer können ihr eigenes Passwort ändern.

Die zweite und dritte Variante ändern die Sitzungsvorgabewerte eines Benutzers für den angegebenen Konfigurationsparameter. Wenn der Benutzer danach eine neue Sitzung startet, dann wird der angegebene Wert der Vorgabewert für die Sitzung. Die benutzerspezifischen Vorgabewerte haben Vorrang vor Werten, die in postgresql.conf oder auf der Kommandozeile des postmaster-Befehls angegeben wurden. Einfache Benutzer können ihre eigenen Sitzungsvorgabewerte ändern. Superuser können die Sitzungsvorgabewerte eines jeden beliebigen Benutzers ändern.

Parameter

benutzername

Der Name des Benutzers, dessen Attribute geändert werden sollen.

passwort

Das neue Passwort für dieses Benutzerkonto.

ENCRYPTED
UNENCRYPTED

Diese Schlüsselwörter kontrollieren, ob das Passwort in pg_shadow verschlüsselt gespeichert ist. (Siehe unter CREATE USER für weitere Informationen über diese Option.)

CREATEDB
NOCREATEDB

Diese Klauseln bestimmen, ob ein Benutzer Datenbanken erzeugen darf. Wenn CREATEDB angegeben ist, dann wird dem Benutzer gestattet, seine eigenen Datenbanken zu erzeugen. Mit NOCREATEDB wird dem Benutzer die Fähigkeit, Datenbanken zu erzeugen, entzogen.

CREATEUSER
NOCREATEUSER

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.

abstime

Das Datum (und wahlweise die Zeit), wann das Passwort des Benutzers abläuft.

parameter
wert

Setzt den Sitzungsvorgabewert des angegebenen Konfigurationsparameters für diesen Benutzer auf den angegebenen Wert. Wenn wert DEFAULT ist oder RESET verwendet wird, dann wird die benutzerspezifische Parametereinstellung entfernt und der Benutzer verwendet in neuen Sitzungen wieder den systemweiten Vorgabewert. Mit RESET ALL können alle Einstellungen entfernt werden.

Unter SET und in Abschnitt 16.4 finden Sie weitere Informationen über die erlaubten Parameternamen und Werte.

Meldungen

ALTER USER

Meldung, wenn die Änderung erfolgreich war.

ERROR: ALTER USER: user "username" does not exist

Fehlermeldung, wenn der angegebene Benutzer dem Datenbanksystem nicht bekannt ist.

Hinweise

ALTER USER kann nicht verwendet werden um die Gruppenmitgliedschaft eines Benutzers zu ändern. Verwenden Sie dazu ALTER GROUP.

Mit ALTER DATABASE kann man außerdem einen Sitzungsvorgabewert an eine bestimmte Datenbank anstatt an einen Benutzer knüpfen.

Beispiele

Das Passwort eines Benutzers ändern:

ALTER USER davide WITH PASSWORD 'hu8jmn3';

Das Ablaufdatum eines Passworts ändern:

ALTER USER manuel VALID UNTIL 'Jan 31 2030';

Das Ablaufdatum eines Passworts ändern, und zwar dass es am 4. Mai 2005 mittags, in der Zeitzone, die UTC eine Stunde voraus ist, ablaufen soll:

ALTER USER chris VALID UNTIL 'May 4 12:00:00 2005 +1';

Einem Benutzer die Fähigkeit, andere Benutzer und neue Datenbanken zu erzeugen, geben:

ALTER USER miriam CREATEUSER CREATEDB;

Kompatibilität

Der Befehl ALTER USER ist eine PostgreSQL-Erweiterung. Der SQL-Standard überlässt die Definition der Benutzer der Implementierung.

Siehe Auch

CREATE USER, DROP USER, SET