如果数据库中的任何用户都可以查看架构层次结构,那么Redshift中的SCHEMA上的GRANT USAGE的意义是什么?

时间:2019-02-28 18:12:04

标签: amazon-redshift

user1确实具有my_schema的USAGE特权

user2在my_schema上没有USAGE特权

但是,只要他们是同一数据库的用户,两个用户仍然可以在此架构下列出所有表及其列。

那么USAGE GRANT的意义是什么。它是否仅是要作为其他特权(例如SELECT)的先决条件?

1 个答案:

答案 0 :(得分:0)

是的,您需要先授予USAGE才能访问表

摘自AWS文档

授予对特定架构的USAGE特权,该特权使用户可以访问该架构中的对象。必须分别授予对这些对象的特定操作(例如,对表的SELECT或UPDATE特权)。默认情况下,所有用户都对PUBLIC模式具有CREATE和USAGE特权。

https://docs.aws.amazon.com/redshift/latest/dg/r_GRANT.html

没有授权'USAGE'的第一次运行授权SELECT | INSERT等无效,即使语句没有失败。