如何为用户授予对系统表的有限访问权限?

时间:2019-01-16 16:26:02

标签: amazon-redshift

我正在查看一个系统表:stl_load_errors,并且在stl_load_errors上方创建了一个视图以限制数据。

示例视图:

create view vw_sample_load_errors
as
select * from stl_load_errors where filename like 'sample123%'

现在,当普通用户查询视图时,该用户将看不到任何行。
我如何让他单独访问此视图。

我不想授予syslog访问权限,这将使用户无限制地访问所有系统表中的所有数据,包括stl_load_errors

让我知道是否足够清楚。

1 个答案:

答案 0 :(得分:0)

无法使用Redshift权限实现所需的功能。用户或者只能在系统表中看到自己的行(缺省值),或者可以看到所有系统表中的所有行(如果SYSLOG ACCESS设置为UNRESTRICTED)。无法为单个系统表授予等效的SYSLOG ACCESS UNRESTRICTED。

正如Jon在评论中所建议的那样,您可以创建一个进程,每分钟左右将数据从stl_load_errors复制到另一个表中,并授予用户对此权限。