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
表示式。要更改策略的其他屬性,例如其適用的命令或它是 permissive 還是 restrictive,必須先刪除策略再重新建立。
要使用 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 的一個擴充套件。
如果您在文件中發現任何不正確的內容、與您對特定功能的體驗不符的內容,或者需要進一步澄清的內容,請使用此表格報告文件問題。