ATTACH RLS POLICY
行レベルのセキュリティポリシーをテーブルで 1 人以上のユーザーまたはロールにアタッチします。
スーパーユーザーとユーザー、または sys:secadmin
ロールを持つロールは、ポリシーをアタッチできます。
構文
ATTACH RLS POLICY policy_name ON [TABLE] table_name [, ...] TO { user_name | ROLE role_name | PUBLIC } [, ...]
パラメータ
- policy_name
-
ポリシーの名前。
- ON [TABLE] table_name [, ...]
-
行レベルのセキュリティポリシーがアタッチされているリレーション。
- TO { user_name | ROLE role_name | PUBLIC} [, ...]
-
ポリシーが指定した 1 つ以上のユーザーまたはロールにアタッチするかどうか指定します。
使用に関する注意事項
ATTACH RLS POLICY ステートメントを使用する際、次の点に注意してください。
-
アタッチされるテーブルには、ポリシー作成ステートメントの WITH 句に一覧表示されているすべての列が含まれている必要があります。
-
Amazon Redshift RLS では、以下のオブジェクトに RLS ポリシーをアタッチできます。
-
テーブル
-
ビュー
-
遅延バインドビュー
-
マテリアライズドビュー
-
-
Amazon Redshift RLS は、以下のオブジェクトへの RLS ポリシーのアタッチをサポートしていません。
-
カタログテーブル
-
データベース間のリレーション
-
外部テーブル
-
一時テーブル
-
ポリシールックアップテーブル
-
マテリアライズドビューのベーステーブル
-
-
スーパーユーザーまたは
sys:secadmin
アクセス許可を持つユーザーにアタッチした RLS ポリシーは、無視されます。
例
次の例では、ポリシーをロールのテーブルにアタッチします。
ATTACH RLS POLICY policy_concerts ON tickit_category_redshift TO ROLE analyst, ROLE dbadmin;