pg_shadow
视图pg_shadow
的存在是为了向后兼容:它模拟了在PostgreSQL版本8.1之前的一个系统目录。它显示pg_authid
中所有被标记为rolcanlogin
的角色的属性。
由于这个表包含口令,所以不能是公众可读的,这也是采用pg_shadow
这个名字的原因。
而pg_user
是pg_shadow
上的一个公共可读视图,它屏蔽了口令域。
表 52.87. pg_shadow
的列
名称 | 类型 | 引用 | 描述 |
---|---|---|---|
usename | name |
| 用户名 |
usesysid | oid |
| 用户的ID |
usecreatedb | bool | 用户能否创建数据库 | |
usesuper | bool | 用户是否为一个超级用户 | |
userepl | bool | 用户能否开启流复制并将系统设置或者取消备份模式。 | |
usebypassrls | bool | 用户能否绕过所有的行级安全性策略,详见 第 5.7 节。 | |
passwd | text | 口令(可能被加密),如果没有则为空。关于加密口令如何存储请参见pg_authid 。 | |
valuntil | abstime | 口令过期时间(仅用于口令认证) | |
useconfig | text[] | 运行时配置变量的会话默认值 |