pg_shadow は、データベースユーザーの情報を保持しています。パスワードなどの情報を含んでいるのでこのテーブルは一般には公表されないようにとこのような名前が付けられています。 pg_user は pg_shadow のビューで、パスワードのフィールドを見えないようにしています。
管理者用ガイドに、ユーザーと権限管理に関するより詳細が記載されています。
ユーザがなんたるかはクラスタ全体にわたる情報ですから pg_shadow はクラスタのすべてのデータベースで共有されます。データベースごとではなく、クラスタごとにたったひとつだけ pg_shadow があります。
Table 3-26. pg_shadow の列
名前 | 型 | 参照先 | 説明 |
---|---|---|---|
usename | name | ユーザー名 | |
usesysid | int4 | ユーザー ID (このユーザーを参照する任意の番号) | |
usecreatedb | bool | 真であれば、このユーザーはデータベースを作成可能 | |
usesuper | bool | 真であれば、このユーザーはスーパーユーザー | |
usecatupd | bool | 真であれば、このユーザーはシステムカタログを更新可能(スーパーユーザーであってもここが真でなければ更新不可) | |
passwd | text | パスワード | |
valuntil | abstime | アカウント有効期限(パスワードの認証でのみ使用) | |
useconfig | text[] | ランタイムコンフィギュレーション変数のセッションのデフォルト |