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
の2番目の構文で、ロールのリスト、using_expression
、check_expression
が指定された時は、それぞれ独立して置換されます。
それらの1つが省略された場合、ポリシーのその部分については変更されません。
name
変更対象の既存のポリシーの名前です。
table_name
ポリシーが適用されているテーブルの名前(スキーマ修飾可)です。
new_name
ポリシーの新しい名前です。
role_name
ポリシーの適用対象のロールです。
複数のロールを一度に指定することができます。
ポリシーをすべてのロールに適用するには、PUBLIC
を指定します。
using_expression
ポリシーのUSING
式です。
詳しくはCREATE POLICYを参照して下さい。
check_expression
ポリシーのWITH CHECK
式です。
詳しくはCREATE POLICYを参照して下さい。
ALTER POLICY
はPostgreSQLの拡張です。