Fehler bei Auslaufen eines User-Accounts

Hallo,

ich habe einen DB-User folgendermaßen angelegt:
CREATE ROLE user LOGIN
ENCRYPTED PASSWORD passwort
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE VALID UNTIL ‘2009-01-17 00:00:00’;

Obwohl der Account gemäß “valid until” ausgelaufen ist, kann dieser User sich mit seiem Passwort immer noch anmelden.

Kennt jemand die Ursache dieses Fehlers und wie kann man den Fehler abstellen ?

Jens

Kann ich nicht nachvollziehen:

kretschmer@apache-new:~$ psql test -h localhost -p 5432 -U testuser
Password for user testuser:
Welcome to psql 8.3.3, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)

test=> \q
kretschmer@apache-new:~$ psql test
Welcome to psql 8.3.3, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

test=# drop role testuser;
DROP ROLE
test=# CREATE ROLE testuser LOGIN ENCRYPTED PASSWORD 'testpasswort' NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE VALID UNTIL '2009-01-17 00:00:00';
CREATE ROLE
test=# \q
kretschmer@apache-new:~$ psql test -h localhost -p 5432 -U testuser
Password for user testuser:
psql: FATAL:  password authentication failed for user "testuser"
kretschmer@apache-new:~$

Andreas

Wie spät ist es auf dem Server?
Was zeigt die Auflistung der User an, steht dort etwas dabei?
Bist du auf dem richtigen Server?

Es ist der richtige Server.
Die Zeit auf dem Server stimmt auch , zeigt heute an.
Ich habe im Schema pg_catalog in der Sicht pg_user nach meinem User geschaut. Er wird noch aufgeführt und in der Spalte “valuntil” steht der Wert “2009-01-17 00:00:00+00”.

Außerdem habe ich die gleichen Befehle auf der Kommandozeile wie akretschmer ausgeführt. Der User “testuser” konnte sich trotz Löschen und Neuerstellen mit “valid until” weiterhin anmelden.
Mir ist aber aufgefallen, dass bei der Anmeldung keine Passwortabfrage erfolgte.
Ist in der Konfigurationsdatei etwas falsch eingestellt ?

Ich vermute mal, Du hast in der pg_hba.conf ein TRUST stehen. Zumindest für local, und meldest Dich local an.

Andreas

Vielen Dank,

die Einstellungen in der pg_hba.conf waren falsch.

Jens