2024 年 9 月 26 日: PostgreSQL 17 发布!
支持版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不支持的版本:11 / 10 / 9.6

51.28. pg_init_privs #

目录 pg_init_privs 记录了系统中对象的初始权限信息。数据库中每个具有非默认(非 NULL)初始权限集的对象都有一条条目。

对象可以具有初始权限,方法是:在系统初始化时设置这些权限(由 initdb 设置)或在 CREATE EXTENSION 期间创建对象时设置,并且扩展脚本使用 GRANT 系统设置初始权限。请注意,系统将自动处理在扩展脚本期间记录权限,并且扩展作者只需在脚本中使用 GRANTREVOKE 语句即可记录权限。 privtype 列指示初始权限是通过 initdb 还是在 CREATE EXTENSION 命令期间设置的。

initdb 设置初始权限的对象将具有 privtype'i' 的条目,而由 CREATE EXTENSION 设置初始权限的对象将具有 privtype'e' 的条目。

表 51.28. pg_init_privs

列 类型

描述

objoid oid(引用任何 OID 列)

特定对象的 OID

classoid oid(引用 pg_class.oid

对象所在的系统目录的 OID

objsubid int4

对于表列,这是列号(objoidclassoid 引用表本身)。对于所有其他对象类型,此列为零。

privtype char

定义此对象的初始权限类型的代码;请参阅文本

initprivs aclitem[]

初始访问权限;有关详细信息,请参阅 第 5.8 节


提交更正

如果您在文档中看到任何不正确的内容、与您对特定功能的体验不符或需要进一步说明,请使用 此表格 报告文档问题。