View a markdown version of this page

SVV_RLS_APPLIED_POLICY - Amazon Redshift

2026 年 6 月 30 日之后,Amazon Redshift 不再支持使用 Python UDF。我们将分阶段开始执行。有关 Python 生命周期终止和迁移选项详情的更多信息,请参阅 2025 年 6 月 30 日发布的博客文章

SVV_RLS_APPLIED_POLICY

使用 SVV_RLS_APPLIED_POLICY 跟踪 RLS 策略在引用受 RLS 保护的关系的查询上的应用情况。

SVV_RLS_APPLIED_POLICY 对以下用户可见:

  • 超级用户

  • 拥有 sys:operator 角色的用户

  • 拥有 ACCESS SYSTEM TABLE 权限的用户

请注意,sys:secadmin 未被授予此系统权限。

表列

列名称 数据类型 说明
username text 运行查询的用户的名称。
query integer 查询的 ID。
xid 长整数 事务的上下文。
pid integer 运行查询的领导进程。
recordtime time 记录查询时的时间。
命令 char(1) 应用了 RLS 策略的命令。可能的值包括 k(用于 unknown)、s(用于 select)、u(用于 update)、i(用于 insert)、y(用于 utility),以及 d(用于 delete)。
datname text 行级别安全性策略附加到的关系的数据库的名称。
relschema text 行级别安全性策略附加到的关系的架构的名称。
relname text 行级别安全性策略附加到的关系的名称。
polname text 附加到关系的行级别安全性策略的名称。
poldefault char(1) 附加到关系的行级别安全性策略的默认设置。可能的值包括用于 false 的 f(如果已应用默认的 false 策略);以及用于 true 的 t(如果已应用默认的 true 策略)。

示例查询

以下示例显示了 SVV_RLS_APPLIED_POLICY 的结果。要查询 SVV_RLS_APPLIED_POLICY,您必须拥有 ACCESS SYSTEM TABLE 权限。

-- Check what RLS policies were applied to the run query. SELECT username, command, datname, relschema, relname, polname, poldefault FROM svv_rls_applied_policy WHERE datname = CURRENT_DATABASE() AND query = PG_LAST_QUERY_ID(); username | command | datname | relschema | relname | polname | poldefault ----------+---------+-----------+-----------+--------------------------+-----------------+------------ molly | s | tickit_db | public | tickit_category_redshift | policy_concerts |