2014-05-13 10 views
11

Mi chiedo come posso verificare se un ruolo (gli utenti sono solo un tipo specifico di ruolo) ha una password impostata in PostgreSQL 9.1.Verificare se un ruolo in PostgreSQL ha una password impostata

Ho provato il comando \dg+ e \du+ ma non mostrano nulla di relativo alla password. Ho anche usato la seguente domanda, ma non aiuta sia a causa della sua indifferenza (Sono abbastanza sicuro che l'utente PostgreSQL ha alcuna password impostata in questo caso):

SELECT * FROM pg_user; 

usename | usesysid | usecreatedb | usesuper | usecatupd | userepl | passwd | valuntil | useconfig 
----------+----------+-------------+----------+-----------+---------+----------+----------+----------- 
postgres |  10 | t   | t  | t   | t  | ******** |   | 
aef  | 16201 | t   | t  | t   | t  | ******** |   | 

risposta

16

password vengono memorizzate in pg_shadow

Nella documentazione:

password (possibilmente criptato); null se nessuno. Vedi pg_authid per dettagli di come vengono memorizzate le password crittografate.

Così si dovrebbe select * from pg_shadow;

Si dovrebbe anche controllare pg_authid tavolo.