# 52.8.pg_authid
目录pg_authid
包含有关数据库授权标识符(角色)的信息。角色包含“用户”和“组”的概念。用户本质上只是一个角色登录
标志设置。任何角色(有或没有登录
) 可以担任其他成员的角色;看pg_auth_members
.
由于此目录包含密码,因此不得公开阅读。pg_roles
是一个公众可读的观点pg_authid
这会清空密码字段。
第 22 章包含有关用户和权限管理的详细信息。
因为用户身份是集群范围的,pg_authid
在集群的所有数据库之间共享:只有一个副本pg_authid
每个集群,而不是每个数据库一个。
表 52.8.pg_authid
列
列类型 描述 |
---|
样的 样的 行标识符 |
名字 姓名 角色名称 |
超级英雄 布尔 角色具有超级用户权限 |
罗林继承 布尔 角色自动继承其所属角色的权限 |
角色创建角色 布尔 角色可以创建更多角色 |
角色创建数据库 布尔 角色可以创建数据库 |
登录 布尔 角色可以登录。也就是说,这个角色可以作为初始会话授权标识符。复制 |
布尔 角色是复制角色。 复制角色可以启动复制连接并创建和删除复制槽。rolbypassrls |
布尔 角色绕过每个行级安全策略,请参阅 第 5.8 节了解更多信息。rolconnlimit |
整数4 对于可以登录的角色,这将设置此角色可以建立的最大并发连接数。 -1 表示没有限制。 |
密码 文本 密码(可能已加密);如果没有,则为空。格式取决于所使用的加密形式。 |
有效期限 时间戳记 密码过期时间(仅用于密码认证);如果没有过期,则为 null |
对于 MD5 加密密码,密码
列将以字符串开头md5
后跟一个 32 个字符的十六进制 MD5 哈希。MD5 散列将用户的密码与用户名连接起来。例如,如果用户乔
有密码xyzzy
, PostgreSQL 将存储 md5 哈希xyzzyjoe
.
如果密码使用 SCRAM-SHA-256 加密,则其格式为:
SCRAM-SHA-256$<iteration count>:<salt>$<StoredKey>:<ServerKey>
在哪里*盐
,存储密钥
和服务器密钥
*采用 Base64 编码格式。此格式与指定的格式相同RFC 5803 (opens new window).
假定不遵循这两种格式的密码是未加密的。