ATTACH RLS POLICY - Amazon Redshift

Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊,請參閱部落格文章

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

ATTACH RLS POLICY

將資料表上的資料列層級安全性政策附加至一或多個使用者或角色。

超級使用者和具有 sys:secadmin 角色的使用者或角色可以附加政策。

語法

ATTACH RLS POLICY { policy_name ON [TABLE] table_name [, ...] | database_name.policy_name ON [TABLE] database_name.schema_name.table_name [, ...] } TO { user_name | ROLE role_name | PUBLIC } [, ...]

Parameters

policy_name

政策的名稱。

database_name

建立政策和關係的資料庫名稱。政策和關係必須位於相同的資料庫。資料庫可以是連線的資料庫或支援 Amazon Redshift 聯合許可的資料庫。

schema_name

關係所屬的結構描述名稱。

table_name

連接至關係之資料列層級安全政策的名稱。

TO { user_name | ROLE role_name | PUBLIC} [, ...]

指定政策是否附加至一或多個指定的使用者或角色。

如需在 Amazon Redshift 聯合許可目錄上使用 ATTACH RLS POLICY,請參閱使用 Amazon Redshift 聯合許可管理存取控制

使用須知

使用 ATTACH RLS POLICY 陳述式時,請注意以下內容:

  • 要附加的資料表應該包含政策建立陳述式的 WITH 子句中列出的所有資料欄。

  • Amazon Redshift RLS 支援將 RLS 政策連接到下列物件:

    • 表格

    • 檢視

    • 近期繫結檢視

    • 具體化視觀表

  • Amazon Redshift RLS 不支援將 RLS 政策附加到下列物件:

    • 目錄表

    • 跨資料庫關係

    • 外部資料表

    • 暫時資料表

    • 政策查詢資料表

    • 具體化視觀表基礎資料表

  • 若將 RLS 政策連接至超級使用者或具有 sys:secadmin 許可的使用者,則會忽略政策。

範例

下列範例會將 RLS 政策連接至指定的資料表和角色組合。RLS 政策會在具有 analystdbadmin 角色的任何使用者存取 tickit_category_redshift 資料表時套用。

ATTACH RLS POLICY policy_concerts ON tickit_category_redshift TO ROLE analyst, ROLE dbadmin;