51.38. pg_policy#

51.38. pg_policy

51.38. pg_policy

Каталог pg_policy хранит политики защиты на уровне строк для таблиц. Политика включает вид команды, к которой она применяется (возможно, все команды), роли, к которым она применяется, выражение, которое будет добавлено в качестве квалификации безопасности-барьера к запросам, включающим таблицу, и выражение, которое будет добавлено в качестве опции WITH CHECK для запросов, пытающихся добавить новые записи в таблицу.

Таблица 51.38. pg_policy Колонки

Тип столбца

Описание

oid oid

Идентификатор строки

polname name

Имя политики

polrelid oid (ссылается на pg_class.oid)

Таблица, к которой применяется политика

polcmd char

Тип команды, к которой применяется политика: r для SELECT, a для INSERT, w для UPDATE, d для DELETE, или * для всех.

polpermissive bool

Является ли политика лицензирования разрешающей или ограничительной?

polroles oid[] (ссылается на pg_authid.oid)

Роли, к которым применяется политика; ноль означает PUBLIC (и обычно появляется один в массиве)

polqual pg_node_tree

Выражение дерева, которое будет добавлено к квалификациям безопасности для запросов, использующих таблицу.

polwithcheck pg_node_tree

Выражение дерева, которое будет добавлено в WITH CHECK qualifications для запросов, пытающихся добавить строки в таблицу.


Примечание

Все политики, хранящиеся в pg_policy, применяются только тогда, когда для их таблицы установлено значение pg_class.relrowsecurity.