我正在使用以下配置单元语句向角色授予权限:
GRANT SELECT ON TABLE my_table TO ROLE some_role;
现在,在这个ddl运行之后,用户就可以在表上运行select了。如果我运行spark作业(该作业对表具有所有权限,并覆盖表),则用户将无法再运行select并收到以下错误:
Error while compiling statement: FAILED: SemanticException No valid privileges User xxx does not have privileges for QUERY The required privileges: Server=server1->xxx->Table=xxx->Column=processing_effective_time->action=select->grantOption=false;
如果我跑了 hdfs dfs -getfacl <path to db>
我看到 some
已授予select权限的组(以前具有r-x权限)不再显示在acl中。
这似乎意味着配置单元表访问权限实际上是隐藏的hdfs文件访问权限。
这是否意味着每次重写表时都必须(重新)授予spark作业中的select特权?
干杯
特里
暂无答案!
目前还没有任何答案,快来回答吧!