Hive权限管理

15 篇文章 0 订阅
11 篇文章 0 订阅

Hive权限管理

1、hive授权模型介绍

(1)Storage Based Authorization in the Metastore Server
基于存储的授权 - 可以对Metastore中的元数据进行保护,但是没有提供更加细粒度的访问控制(例如:列级别、行级别)。
(2)SQL Standards Based Authorization in HiveServer2
基于SQL标准的Hive授权 - 完全兼容SQL的授权模型,推荐使用该模式。
(3)Default Hive Authorization (Legacy Mode)
hive默认授权 - 设计目的仅仅只是为了防止用户产生误操作,而不是防止恶意用户访问未经授权的数据。

2、基于SQL标准的hiveserver2授权模式

​ (1)完全兼容SQL的授权模型
​ (2)除支持对于用户的授权认证,还支持角色role的授权认证
​ 1、role可理解为是一组权限的集合,通过role为用户授权
​ 2、一个用户可以具有一个或多个角色,默认包含另种角色:public、admin

3、基于SQL标准的hiveserver2授权模式的限制

​ 1、启用当前认证方式之后,dfs, add, delete, compile, and reset等命令被禁用。
​ 2、通过set命令设置hive configuration的方式被限制某些用户使用。
​ (可通过修改配置文件hive-site.xml中hive.security.authorization.sqlstd.confwhitelist进行配置)
​ 3、添加、删除函数以及宏的操作,仅为具有admin的用户开放。
​ 4、用户自定义函数(开放支持永久的自定义函数),可通过具有admin角色的用户创建,其他用户都可以使用。
​ 5、Transform功能被禁用。

4、详细配置
<property>
  <name>hive.security.authorization.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.server2.enable.doAs</name>
  <value>false</value>
</property>
<property>
  <name>hive.users.in.admin.role</name>
  <value>root</value>
</property>
<property>
  <name>hive.security.authorization.manager</name>  <value>org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory</value>
</property>
<property>
  <name>hive.security.authenticator.manager</name>
  <value>org.apache.hadoop.hive.ql.security.SessionStateUserAuthenticator</value>
</property>
5、Hive权限管理命令
--角色的添加、删除、查看、设置:
-- 创建角色
CREATE ROLE role_name;  
-- 删除角色
DROP ROLE role_name; 
-- 设置角色
SET ROLE (role_name|ALL|NONE); 
-- 查看当前具有的角色
SHOW CURRENT ROLES;  
-- 查看所有存在的角色
SHOW ROLES;  
6、Hive权限分配图
ActionSelectInsertUpdateDeleteOwershipAdminURL Privilege(RWX Permission + Ownership)
ALTER DATABASEY
ALTER INDEX PROPERTIESY
ALTER INDEX REBUILDY
ALTER PARTITION LOCATIONYY (for new partition location)
ALTER TABLE (all of them except the ones above)Y
ALTER TABLE ADD PARTITIONYY (for partition location)
ALTER TABLE DROP PARTITIONY
ALTER TABLE LOCATIONYY (for new location)
ALTER VIEW PROPERTIESY
ALTER VIEW RENAMEY
ANALYZE TABLEYY
CREATE DATABASEY (if custom location specified)
CREATE FUNCTIONY
CREATE INDEXY (of table)
CREATE MACROY
CREATE TABLEY (of database)Y (for create external table – the location)
CREATE TABLE AS SELECTY (of input)Y (of database)
CREATE VIEWY + G
DELETEY
DESCRIBE TABLEY
DROP DATABASEY
DROP FUNCTIONY
DROP INDEXY
DROP MACROY
DROP TABLEY
DROP VIEWY
DROP VIEW PROPERTIESY
EXPLAINY
INSERTYY (for OVERWRITE)
LOADY (output)Y (output)Y (input location)
MSCK (metastore check)Y
SELECTY
SHOW COLUMNSY
SHOW CREATE TABLEY+G
SHOW PARTITIONSY
SHOW TABLE PROPERTIESY
SHOW TABLE STATUSY
TRUNCATE TABLEY
UPDATEY
  • 20
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新鲜氧气

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值