52.38. pg_policy

The catalog pg_policy stores row level security policies for tables. A policy includes the kind of command that it applies to (possibly all commands), the roles that it applies to, the expression to be added as a security-barrier qualification to queries that include the table, and the expression to be added as a WITH CHECK option for queries that attempt to add new records to the table.

Table 52.38. pg_policy Columns

Name Type References Description
polname name The name of the policy
polrelid oid pg_class.oid The table to which the policy applies
polcmd char The command type to which the policy is applied: r for SELECT, a for INSERT, w for UPDATE, d for DELETE, or * for all
polpermissive boolean Is the policy permissive or restrictive?
polroles oid[] pg_authid.oid The roles to which the policy is applied
polqual pg_node_tree The expression tree to be added to the security barrier qualifications for queries that use the table
polwithcheck pg_node_tree The expression tree to be added to the WITH CHECK qualifications for queries that attempt to add rows to the table

Note

Policies stored in pg_policy are applied only when pg_class.relrowsecurity is set for their table.

© 1996–2019 The PostgreSQL Global Development Group
Licensed under the PostgreSQL License.
https://www.postgresql.org/docs/11/catalog-pg-policy.html