他のバージョンの文書 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

ALTER POLICY

ALTER POLICY — 行単位のセキュリティポリシーの定義を変更する

概要

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 ) ]

説明

ALTER POLICYは既存の行単位のセキュリティポリシーの定義を変更します。 ALTER POLICYはポリシーが適用されるロールの集合、およびUSINGWITH CHECKの式を変更できるだけであることに注意してください。 適用されるコマンドや、許容と制限の別といったその他のポリシーの属性を変更するには、ポリシーを削除して再作成しなければなりません。

ALTER POLICYを使うには、ポリシーの適用対象のテーブルの所有者でなければなりません。

ALTER POLICYの2番目の構文で、ロールのリスト、using_expressioncheck_expressionが指定された時は、それぞれ独立して置換されます。 それらの1つが省略された場合、ポリシーのその部分については変更されません。

パラメータ

name

変更対象の既存のポリシーの名前です。

table_name

ポリシーが適用されているテーブルの名前(スキーマ修飾可)です。

new_name

ポリシーの新しい名前です。

role_name

ポリシーの適用対象のロールです。 複数のロールを一度に指定することができます。 ポリシーをすべてのロールに適用するには、PUBLICを指定します。

using_expression

ポリシーのUSING式です。 詳しくはCREATE POLICYを参照して下さい。

check_expression

ポリシーのWITH CHECK式です。 詳しくはCREATE POLICYを参照して下さい。

互換性

ALTER POLICYPostgreSQLの拡張です。

関連項目

CREATE POLICY, DROP POLICY