Postgresql 中文操作指南
Synopsis
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 ) ]
Description
ALTER POLICY 更改一个现有行级安全策略的定义。请注意, ALTER POLICY 只允许修改策略适用的角色集以及 USING 和 WITH CHECK 表达式。如要更改策略的其他属性(例如适用的命令,或者它是否为宽容的或限制的),则必须删除并重新创建该策略。
如要使用 ALTER POLICY ,你必须拥有应用该策略的表的拥有权。
在 ALTER POLICY 的第二种形式中,角色列表 using_expression 和 check_expression 在指定时会分别进行替换。当省略其中一个子句时,对应部分的策略保持不变。
Parameters
-
name
-
一个要更改的现有策略的名称。
-
-
table_name
-
策略所在表的名称(可选择模式限定)。
-
-
new_name
-
策略的新名称。
-
-
role_name
-
策略适用的角色。可同时指定多个角色。如要将策略应用到所有角色,请使用 PUBLIC 。
-
-
using_expression
-
策略的 USING 表达式。有关详细信息,请参见 CREATE POLICY 。
-
-
check_expression
-
策略的 WITH CHECK 表达式。有关详细信息,请参见 CREATE POLICY 。
-