SVV_RLS_APPLIED_POLICY - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

SVV_RLS_APPLIED_POLICY

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

只有超级用户、sys:operator 或拥有系统权限 ACCESS SYSTEM TABLE 的用户才能查询此视图。请注意,sys:secadmin 未被授予此系统权限。

表列

列名称 数据类型 描述
username text 运行查询的用户的名称。
query integer 查询的 ID。
xid long 事务的上下文。
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 |