在 Hive 中给用户授权,通常有两种体系:
下面先讲 Hive 原生授权方式,再补充常见生产做法。
在 hive-site.xml 中配置(一般测试环境):
<property>
<name>hive.security.authorization.enabled</name>
<value>true</value>
</property>
<property>
<name>hive.security.authorization.createtable.owner.grants</name>
<value>ALL</value>
</property>
⚠️ 生产环境一般用 Ranger / Sentry,不直接用 Hive 原生授权
Hive 本身不创建用户,用户来自:
例如 Linux 用户:
useradd hiveuser1
GRANT CREATE, SELECT, INSERT
ON DATABASE db_name
TO USER hiveuser1;
GRANT SELECT, INSERT
ON TABLE db_name.table_name
TO USER hiveuser1;
GRANT SELECT (col1, col2)
ON TABLE db_name.table_name
TO USER hiveuser1;
REVOKE SELECT
ON TABLE db_name.table_name
FROM USER hiveuser1;
SHOW GRANT USER hiveuser1;
CREATE ROLE analyst;
GRANT SELECT ON DATABASE sales TO ROLE analyst;
GRANT ROLE analyst TO USER hiveuser1;
SHOW ROLES;
SHOW ROLE GRANT USER hiveuser1;
如果你能告诉我:
我可以给你一套可直接用的授权方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。