ALTER POLICY — 行単位のセキュリティポリシーの定義を変更する
ALTER POLICYnameONtable_nameRENAME TOnew_nameALTER POLICYnameONtable_name[ TO {role_name| PUBLIC | 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の拡張です。