apache http可以访问https没权限_Hive权限管理:基于存储授权

Hive的默认权限模式

Hive的默认授权模式支持基于用户、组和角色的传统RDBMS风格的授权,并授予他们在数据库或表上执行操作的权限,详细描述在hive授权(https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Authorization)和hive废弃的权限模式。

这种RDBMS类型的授权不太适合Hadoop中的典型用例,因为在实现方面存在以下差异:

  1. 与传统的RDBMS不同,Hive不能完全控制它下面的所有数据。数据存储在多个文件中,文件系统具有独立的授权系统
  2. 与传统的RDBMS不允许其他程序直接访问数据不同的是,人们倾向于使用其他应用程序直接读取或写入与Hive一起使用的文件或目录

这就产生了这样的问题场景:

  1. 您向用户授予权限,但是用户不能访问数据库或文件系统,因为他们没有文件系统权限
  2. 您删除了用户的权限,但是用户仍然可以通过文件系统直接访问数据,因为他们具有文件系统权限

Hive社区意识到可能不存在一个万能的授权模型,因此它支持可插入的其他授权模型。在HCatalog包中,我们介绍了一个授权接口的实现,该接口使用底层文件系统(通常是存储后端)的权限作为每个数据库、表或分区的权限的基础

在Hive中,当文件系统用于存储时,有一个对应于数据库或表的目录。使用这种授权模型,用户或组对该目录的读/写权限决定了用户对数据库或表的权限。在HBase等其他存储系统中,对系统中等效实体的授权将使用系统的授权机制来确定Hive中的权限。

例如,alter table操作将在允许操作之前检查用户是否对表目录具有权限,即使它可能不会更改文件系统上的任何内容

用户需要对存储系统上对应的实体进行写访问,以执行任何类型的操作,从而修改数据库或表的状态。用户需要读访问权限才能对数据库或表执行任何非修改操作

当数据库或表被具有Unix/ posix权限模型(如HDFS)的文件系统所支持时,您可以为所有者用户、组和' other '设置读(r)和写(w)权限

例如,在http://hadoop.apache.org/docs/rx.x.x/hdfs_permissions_guide.html上给出了HDFS权限的详细信息

HDFS权限管理1.0.4版本http://hadoop.apache.org/docs/r1.0.4/hdfs_permissions_guide.html

HDFS权限管理1.2.1版本http://hadoop.apache.org/docs/r1.2.1/hdfs_permissions_guide.html

注意:对HDFS ACL(在Apache Hadoop 2.4中引入)的支持在已发布的Hive版本中是不可用的。这意味着,它只检查传统rwx样式的权限,以确定用户是否可以写入文件系统。对ACL的支持在Hive trunk Hive -7583中可用,在Hive 0.14中也可用

注意:如果hive.warehouse.subdir.inherit.perms启用后,将通过以下权限继承规则设置hive创建的文件和目录的权限和ACL。

用于确定用户是否对目录或文件具有权限的文件系统逻辑将被Hive使用

下表显示了此授权模型下的Hive操作所需的最小权限:

8f52843f2145fc090fd4addce32a8d33.png

警告:目前Hive的这种授权模式并不能阻止恶意用户做坏事

权限未使用的DDL:

管理Hive默认授权模型的权限的DDL语句对基于存储的模型中的权限没有任何影响

配置基于存储系统的授权

基于文件系统的授权模型的实现可以通过一个名为StorageBasedAuthorizationProvider的授权提供程序来实现,该授权提供程序是Hive的一部分。(在0.10.0版本的Hive包中添加了对这个的支持—参见hive-3705和Metastore服务器中的基于存储的授权。)

需要将以下条目添加到hive-site.xml以启用授权

 hive.security.authorization.enabledtrueenable or disable the hive client authorizationhive.security.authorization.managerorg.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProviderthe hive client authorization manager class name.    The user defined authorization class should implement interface    org.apache.hadoop.hive.ql.security.authorization.HiveAuthorizationProvider.    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hive用户指南 目录 1. HIVE结构 6 1.1 HIVE架构 6 1.2 Hive 和 Hadoop 关系 7 1.3 Hive 和普通关系数据库的异同 8 1.4 HIVE元数据库 9 1.4.1 DERBY 9 1.4.2 Mysql 10 1.5 HIVE的数据存储 11 1.6 其它HIVE操作 11 2. HIVE 基本操作 12 2.1 create table 12 2.1.1 总述 12 2.1.2 语法 12 2.1.3 基本例子 14 2.1.4 创建分区 15 2.1.5 其它例子 16 2.2 Alter Table 17 2.2.1 Add Partitions 17 2.2.2 Drop Partitions 17 2.2.3 Rename Table 17 2.2.4 Change Column 18 2.2.5 Add/Replace Columns 18 2.3 Create View 18 2.4 Show 19 2.5 Load 19 2.6 Insert 21 2.6.1 Inserting data into Hive Tables from queries 21 2.6.2 Writing data into filesystem from queries 21 2.7 Cli 22 2.7.1 Hive Command line Options 22 2.7.2 Hive interactive Shell Command 24 2.7.3 Hive Resources 24 2.7.4 调用python、shell等语言 25 2.8 DROP 26 2.9 其它 27 2.9.1 Limit 27 2.9.2 Top k 27 2.9.3 REGEX Column Specification 27 3. Hive Select 27 3.1 Group By 28 3.2 Order /Sort By 28 4. Hive Join 29 5. HIVE参数设置 31 6. HIVE UDF 33 6.1 基本函数 33 6.1.1 关系操作符 33 6.1.2 代数操作符 34 6.1.3 逻辑操作符 35 6.1.4 复杂类型操作符 35 6.1.5 内建函数 36 6.1.6 数学函数 36 6.1.7 集合函数 36 6.1.8 类型转换 36 6.1.9 日期函数 36 6.1.10 条件函数 37 6.1.11 字符串函数 37 6.2 UDTF 39 6.2.1 Explode 39 7. HIVE 的MAP/REDUCE 41 7.1 JOIN 41 7.2 GROUP BY 42 7.3 DISTINCT 42 8. 使用HIVE注意点 43 8.1 字符集 43 8.2 压缩 43 8.3 count(distinct) 43 8.4 JOIN 43 8.5 DML操作 44 8.6 HAVING 44 8.7 子查询 44 8.8 Join中处理null值的语义区别 44 9. 优化与技巧 47 9.1 全排序 47 9.1.1 例1 48 9.1.2 例2 51 9.2 怎样做笛卡尔积 54 9.3 怎样写exist/in子句 54 9.4 怎样决定reducer个数 55 9.5 合并MapReduce操作 55 9.6 Bucket 与 sampling 56 9.7 Partition 57 9.8 JOIN 58 9.8.1 JOIN原则 58 9.8.2 Map Join 58 9.8.3 大表Join的数据偏斜 60 9.9 合并小文件 62 9.10 Group By 62 10. HIVE FAQ: 62

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值