子用户无法在teradata中选择父级视图

时间:2015-03-03 13:03:08

标签: sql select parent-child teradata

在Teradata SQLAssistant中,我创建了一个db用户USER1,它有17个视图。这个用户可以在任何视图上执行SELECT,这要归功于我授予的个人资料/角色,然后与他相关联。 他的孩子USER2是一个与USER1具有相同配置文件/角色的数据库用户,但我的问题是他无法选择USER1的任何视图:

  

找不到表格/视图****,或者您没有访问权限

当我签入Teradata Administrator时,USER2对17个视图用作USER1的数据仓库表具有相同的权限(READ)....

任何人都可以帮助我吗? 我可以提供更多细节。

提前致谢。


EDIT1:我有可能做那个选择,但我需要做一个  每张桌子上Grant SELECT on table_used_by_view to USER1 WITH GRANT OPTION; ......我真的需要坚持使用ROLE / PROFILE方法,所以我不能接受这个解决方案(因为你不能做一个WITH GRANT OPTION关于角色)。

2 个答案:

答案 0 :(得分:0)

在这种情况下,视图的所有者USER1必须在数据库或视图中定义的表上明确授予SELECT WITH GRANT OPTION

GRANT SELECT ON {db1}.{table1|view1} TO USER1 WITH GRANT OPTION;

在较高级别,这允许USER2访问另一个数据库对象中的数据,而无需访问授予USER2的数据的显式权限。

答案 1 :(得分:0)

将数据仓库表(由USER1'视图使用)上的选项授予USER1,并通过ROLE将USER1上的SELECT授予USER2。

现在我只需要在创建它们时将该角色交给USER1的孩子,并且他们可以在USER1的视图上执行SELECT