CDH中的Hive文件系统权限

CDH中的Hive文件系统权限,第1张

翻译: https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_ig_filesystem_perm.html

版本: 5.14.2

Hive数据存储在HDFS中,通常位于/user/hive/warehouse下 。如果/user/hive and /user/hive/warehouse 目录尚不存在,则需要创建目录。确保这个位置(或者你指定的任何路径 hive.metastore.warehouse.dir )存在并且可以由您希望创建表的用户写入。

重要:

Cloudera建议将Hive仓库目录的权限设置为 1777 ,让所有用户都可以访问 。这允许用户创建和访问他们的表,但是阻止不了他们删除其他用户的表。

另外,每个提交查询的用户都必须有一个HDFS主目录。 / tmp目录 (在本地文件系统上)必须是可写的,因为Hive广泛使用它。

HiveServer2 Impersonation 允许用户以连接用户的身份执行查询并访问HDFS文件。

如果您未启用impersonation,HiveServer2默认执行所有Hive任务作为启动Hive服务器的用户对于使用Kerberos身份验证的群集,这是映射到与HiveServer2一起使用的 Kerberos主体 的ID 。设置权限 1777 如上所述,允许此用户访问Hive仓库目录。

您可以 在服务器和客户端上 设置更改此默认行为hive.metastore.execute.setugi 为true。此设置会使Metastore服务器使用客户端的用户和组权限。

一、权限查询

1、查询master用户拥有的权限

2、查询master用户对于库dw拥有的权限

二、赋权限

给master用户赋dw库all的 *** 作权限

三、服务器上切换登录用户

Apache Ranger提供一个集中式安全管理框架, 并解决授权和审计。它可以对Hadoop生态的组件如HDFS、Yarn、Hive、Hbase等进行细粒度的数据访问控制。通过 *** 作Ranger控制台,管理员可以轻松的通过配置策略来控制用户访问权限。

本文章介绍Ranger与Hive集成过程,与使用方法

登陆RangerAdmin: http://l-node1.data.beta.cn0:6080

点击 hivebeta 开始Hive权限控制

根据我们刚才的配置,hive用户拥有all权限

点击 Add New Policy 给rangeruser1用户授予ranger_test_db.t_user.* select权限

添加一个Masking Policy

Select Masking Option里面填Mask的选项,默认有: 显示前4位、显示后4位、哈希、Null值、日期类型仅显示年等。我们这里使用Custom自定义,

其实就是写Select子句 可以根据逻辑自己实现,也可使用UDF。本例中我们使用 concat(substr(phone,1,7),'****') 将手机号的后四位屏蔽掉

添加一个Row Level Filter Policy

Row Level Filter里面填Filter的过滤规则,其实就是写Where子句。本例中我们使用 name <>'hanze' 将 name为'hanze'的用户过滤掉

上图的Policy,实现了这样的场景:

产品组(product)可以访问带"TAG"标签的资源但实习生(intern)不靠谱 实习生没有访问权限但因实习生中的 meizi 表现突出 给他赋予访问权限

Apache Ranger Installation

Apache Ranger User Guide

Hortonworks HDP doc

HDFS + Ranger

Ranger PPT

Ranger + Atlas PPT


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11853166.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存