pg_policy
目录pg_policy
存储着表的行级安全性策略。
一个策略包括它适用于的命令种类(可能适用于所有命令)、它适用于的角色、
被作为安全屏障条件增加到包括该表的查询的表达式以及被作为
WITH CHECK
选项增加到尝试向表增加新纪录的查询的表达式。
表 52.38. pg_policy
列
名称 | 类型 | 引用 | 描述 |
---|---|---|---|
polname | name | 策略的名称 | |
polrelid | oid |
| 策略适用的表 |
polcmd | char | 策略适用的命令类型:
r 表示SELECT ,
a 表示INSERT ,
w 表示UPDATE ,
d 表示DELETE ,
* 表示所有命令类型 | |
polpermissive | boolean | 策略是宽容性的还是限制性的? | |
polroles | oid[] |
| 策略适用的角色 |
polqual | pg_node_tree | 被作为安全屏障条件增加到使用该表的查询的表达式树 | |
polwithcheck | pg_node_tree | 被作为WITH CHECK 条件增加到尝试向表增加行的查询的表达式树 |
存储在pg_policy
中的策略只有在它们所适用的表的
pg_class
.relrowsecurity
被设置时才其作用。