我正在尝试向我们组织中的一群人提供红移只读权限。
我们有不同的模式,但我只为团队之外的人授予PUBLIC模式的USAGE和SELECT权限。
问题是,我在PUBLIC模式中有访问其他模式中的表/视图的视图,并且目前它们不会运行,因为用户没有这些其他模式的权限。
我想知道,有没有办法让人们间接访问不同的模式而不给他们直接查询其他模式的权限?
由于
答案 0 :(得分:0)
这似乎是答案(好吧,看起来它对我有用):
GRANT USAGE ON SCHEMA public TO GROUP public_users_group;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO GROUP public_users_group;
GRANT USAGE ON SCHEMA schema_for_indirect_access TO GROUP public_users_group;
似乎任何时候在上述任何一个模式中创建一个新实体,都需要再次执行权限的脚本,所以每一半我都使用python在cron作业中运行脚本。