ALTER POLICY#

Примечание

Эта страница переведена при помощи нейросети GigaChat.

ALTER POLICY — изменение определения политики безопасности уровня строки.

Синтаксис#

ALTER POLICY name ON table_name RENAME TO new_name

ALTER POLICY name ON table_name
    [ TO { role_name | PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ]
    [ USING ( using_expression ) ]
    [ WITH CHECK ( check_expression ) ]

Описание#

ALTER POLICY используется для изменения уже существующей политики безопасности на уровне строк. С ее помощью можно изменить только список ролей, на которые распространяется политика, а также выражения USING и WITH CHECK. Чтобы изменить другие параметры политики — например, тип команды, на которую она действует, или ее характер (разрешающая или ограничивающая) — потребуется удалить существующую политику и создать новую.

Чтобы выполнить эту команду, необходимо быть владельцем таблицы, к которой относится политика.

Во втором варианте синтаксиса ALTER POLICY допускается независимое указание списка ролей, выражений USING и WITH CHECK. Если какое-либо из этих выражений не указано, соответствующий элемент политики сохраняется без изменений.

Параметры#

name

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

table_name

Имя таблицы, при необходимости дополненное схемой, к которой применяется политика.

new_name

Новое имя политики.

role_name

Роль (роли), к которой применяется политика. Можно одновременно указать несколько ролей. Чтобы применить политику ко всем ролям, используйте PUBLIC.

using_expression

Выражение USING для политики. Смотрите CREATE POLICY для получения подробной информации.

check_expression

Выражение WITH CHECK для политики. Смотрите CREATE POLICY для получения подробной информации.

Совместимость#

ALTER POLICY является расширением PostgreSQL.

Смотрите также#

CREATE POLICY, DROP POLICY