The view pg_shadow exists for backwards compatibility: it emulates a catalog that existed in PostgreSQL before version 8.1. It shows properties of all roles that are marked as rolcanlogin in pg_authid .

The name stems from the fact that this table should not be readable by the public since it contains passwords. pg_user is a publicly readable view on pg_shadow that blanks out the password field.

Table 49-75. pg_shadow Columns

Name Type References Description
usename name pg_authid .rolname User name
usesysid oid pg_authid .oid ID of this user
usecreatedb bool User can create databases
usesuper bool User is a superuser
userepl bool User can initiate streaming replication and put the system in and out of backup mode.
usebypassrls bool User bypasses every row level security policy, see Section 5.7 for more information.
passwd text Password (possibly encrypted); null if none. See pg_authid for details of how encrypted passwords are stored.
valuntil abstime Password expiry time (only used for password authentication)
useconfig text[] Session defaults for run-time configuration variables