34.56. usage_privileges

视图usage_privileges用于标识在各种类型的对象上赋与当前用户或者当前用户赋与的 USAGE权限。在 PostgreSQL中, 当前适用于排序规则、域、外部数据封装、外部服务器和序列。每个对象、授权者和受权者的组合都有一行。

因为在PostgreSQL里,排序规则并没有真正的权限, 所以这个视图显示了隐含的由PUBLIC的所有者授予所有排序规则的非可授予的 USAGE权限。其他的对象类型显示了真正的权限。

在PostgreSQL中,序列也支持SELECTUPDATE权限, 除了USAGE权限。这不是标准并且因此在信息模式中不可见。

Table 34-54. usage_privileges 字段

名字 数据类型 描述
grantor sql_identifier 授权的角色名
grantee sql_identifier 被授权的角色名
object_catalog sql_identifier 包含该对象的数据库名(总是当前数据库)
object_schema sql_identifier 如果适用,是包含该对象的模式名,否则是空字符串
object_name sql_identifier 对象名
object_type character_data COLLATIONDOMAINFOREIGN DATA WRAPPERFOREIGN SERVERSEQUENCE
privilege_type character_data 总是USAGE
is_grantable yes_or_no 如果权限可授予则为YES,否则为NO