43.8. pg_authid

pg_authidカタログはデータベース認証識別子(ロール)の情報を保持しています。ロールは"users""groups"の概念を包括しています。ユーザは本質的にrolcanloginフラグセットを持ったロールです。 どのようなロール(rolcanloginを持っている、持っていないに関わらず)も他のロールをメンバーとして持っていても構いません。pg_auth_membersを参照して下さい。

このカタログはパスワードを含んでいるため、中身を読むことが出来ないようにしなければいけません。 pg_rolesは、pg_authidのビューで、パスワードのフィールドは空白となっていますが中身を読むことが出来ます。

第18章にはユーザと権限管理に関するより詳細が記載されています。

ユーザの本人確認はクラスタ全体にわたる情報ですからpg_authidはクラスタの全てのデータベースで共有されます。データベースごとではなく、クラスタごとにたった1つだけpg_authidがあります。

表 43-8. pg_authid の列

名前説明 
rolnamenameロール名 
rolsuperboolロールはスーパユーザの権限を持っています 
rolinheritboolロールのメンバのロールの自動権限的な継承 
rolcreateroleboolロールのロール作成可能性 
rolcreatedbboolロールのデータベース作成可能性 
rolcatupdatebool ロールはシステムカタログを更新可能(スーパーユーザであってもここが真でなければ更新不可)  
rolcanloginbool ロールはログイン可能(ロールは初期セッション認証の識別子となる)  
rolconnlimitint4 ログインするロールにとって、これはロールが作成する同時接続の最大数のセット。-1は制限無しとなる。  
rolpasswordtext(おそらく暗号化された)パスワード。無い場合はNULL 
rolvaliduntiltimestamptzパスワード有効期限(パスワード認証でのみ使用)。NULLの場合には満了時間はない。 
rolconfigtext[]ランタイムコンフィギュレーション変数のセッションデフォルト