RLS 政策擁有權和管理 - Amazon Redshift

Amazon Redshift 自 2025 年 11 月 1 日起不再支援建立新的 Python UDF。如果您想要使用 Python UDF,請在該日期之前建立 UDF。現有 Python UDF 將繼續正常運作。如需詳細資訊,請參閱部落格文章

RLS 政策擁有權和管理

身為擁有 sys:secadmin 角色的超級使用者、安全管理員或使用者,您可以建立、修改、連接和分離 RLS 政策。RLS 政策可以連接至資料表、檢視、近期繫結檢視 (LBV) 和具體化視觀表 (MV)。在物件層級上,您可以開啟或關閉資料列層級安全,而不必修改資料表的結構描述定義。

若要開始使用資料列層級安全,下列是您可以使用的 SQL 陳述式:

  • 使用 ALTER TABLE 陳述式來開啟或關閉資料表、檢視或近期繫結檢視上的 RLS。如需更多詳細資訊,請參閱 ALTER TABLE

  • 使用 ALTER MATERIALIZED VIEW 陳述式在具體化視觀表 (MV) 上開啟或關閉 RLS。如需更多詳細資訊,請參閱 ALTER MATERIALIZED VIEW

  • 使用 CREATE RLS POLICY 陳述式為一或多個資料表建立安全政策,並在政策中指定一或多個使用者或角色。

    如需更多詳細資訊,請參閱 CREATE RLS POLICY

  • 使用 ALTER RLS POLICY 陳述式來修改政策,例如變更政策定義。您可以針對多個資料表或檢視使用相同的政策。

    如需更多詳細資訊,請參閱 ALTER RLS POLICY

  • 使用 ATTACH RLS POLICY 陳述式可將政策附加至一或多個關係、一或多個使用者或角色。

    如需更多詳細資訊,請參閱 ATTACH RLS POLICY

  • 使用 DETACH RLS POLICY 陳述式從一或多個關係、一或多個使用者或是角色中將政策分離。

    如需更多詳細資訊,請參閱 DETACH RLS POLICY

  • 您可以使用 DROP RLS POLICY 陳述式來捨棄政策。

    如需更多詳細資訊,請參閱 DROP RLS POLICY

  • 您可以使用 GRANT 和 REVOKE 陳述式,明確授予及撤銷參考查閱資料表之 RLS 政策的 SELECT 許可。如需詳細資訊,請參閱GRANTREVOKE

若要監控所建立的證測,sys:secadmin 可以檢視 SVV_RLS_POLICYSVV_RLS_ATTACHED_POLICY

若要列出受 RLS 保護的關係,sys:secadmin 可以檢視 SVV_RLS_RELATION

若要追蹤參照受 RLS 保護關係之查詢上的 RLS 政策應用程式,超級使用者、sys:operator 或任何具有系統許可 ACCESS SYSTEM TABLE 的使用者都可以檢視 SVV_RLS_APPLIED_POLICY。請注意,在預設情況下,sys:secadmin 不會授予這些許可。

若要允許使用者完整存取受 RLS 保護的關係,您可以授予 IGNORE RLS 許可。超級使用者或 sys:secadmin 會自動獲得 IGNORE RLS 許可。如需更多詳細資訊,請參閱 GRANT

若要說明 EXPLAIN 計劃中查詢的 RLS 政策篩選,以針對與 RLS 相關的查詢進行疑難排解,您可以將 EXPLAIN RLS 許可授予任何使用者。如需詳細資訊,請參閱GRANTEXPLAIN