Skip to content

53.38.pg_policy#

目录pg_policy存储表的行级安全策略。策略包括它适用的命令类型(可能是所有命令)、它适用的角色、要作为安全屏障限定条件添加到包含表的查询的表达式,以及要作为WITH CHECK选项添加到尝试向表中添加新记录的查询的表达式。

表 53.38.pg_policy

列类型

说明

oid oid

行标识符

polname name

策略的名称

polrelid oid(引用 pg_class.oid

应用策略的表

polcmd char

应用策略的命令类型:r 表示 SELECTa 表示 INSERTw 表示 UPDATEd 表示 DELETE,或 * 表示全部

polpermissive bool

策略是宽松的还是限制性的?

polroles oid[](引用 pg_authid.oid

应用策略的角色;零表示 PUBLIC(且通常单独出现在数组中)

polqual pg_node_tree

要添加到使用该表的查询的安全屏障限定条件的表达式树

polwithcheck pg_node_tree

要添加到尝试向表中添加行的查询的 WITH CHECK 限定条件的表达式树

注意

仅当pg_class.relrowsecurity设置为其表时,才会应用存储在pg_policy中的策略。