pg_policy #目录pg_policy存储着表的行级安全性策略。 一个策略包括它适用于的命令种类(可能适用于所有命令)、它适用于的角色、 被作为安全屏障条件增加到包括该表的查询的表达式以及被作为 WITH CHECK选项增加到尝试向表增加新纪录的查询的表达式。
Table 51.38. pg_policy 列
| Name | 类型 | 引用 | 描述 |
|---|---|---|---|
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被设置时才起作用。