ALTER POLICY — 更改行级安全策略的定义
ALTER POLICYname
ONtable_name
RENAME TOnew_name
ALTER POLICYname
ONtable_name
[ TO {role_name
| PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ] [ USING (using_expression
) ] [ WITH CHECK (check_expression
) ]
ALTER POLICY
更改现有行级安全策略的定义。请注意,ALTER POLICY
仅允许修改策略适用的角色集以及 USING
和 WITH CHECK
表达式。要更改策略的其他属性,例如其适用的命令或它是允许性还是限制性,则必须删除并重新创建该策略。
要使用 ALTER POLICY
,您必须拥有策略所应用的表的拥有权。
在 ALTER POLICY
的第二种形式中,角色列表、using_expression
和 check_expression
如果指定则被独立替换。当其中一个子句被省略时,策略的相应部分保持不变。
name
要更改的现有策略的名称。
table_name
策略所在表的名称(可选地带模式限定)。
new_name
策略的新名称。
role_name
策略适用的角色。可以同时指定多个角色。要将策略应用于所有角色,请使用 PUBLIC
。
using_expression
策略的 USING
表达式。有关详细信息,请参阅 CREATE POLICY。
check_expression
策略的 WITH CHECK
表达式。有关详细信息,请参阅 CREATE POLICY。
ALTER POLICY
是 PostgreSQL 扩展。
如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用 此表单 报告文档问题。