Apache Ranger && HDFS

Apache Ranger && HDFS

标签(空格分隔): Hadoopapache


HDFS

HDFS对于任何Hadoop大数据平台来讲都是核心组成部分,为了增强对Hadoop平台的数据保护,将安全控制深刻到HDFS层是很是有必要的。HDFS自己提供了Kerberos认证,而且提供了基于POSIX风格的权限和HDFS——ACL控制,固然它也可使用基于Apache Ranger的权限控制体系。安全

Apache Ranger (http://hortonworks.com/hadoop/ranger/) 是一个集中式的Hadoop体系的安全管理解决方案,它提供给管理者在HDFS或者其它Hadoop体系组件上建立和应用安全策略的功能。
POSIX:控制 用户:属组:其余用户权限类型,权限控制比较单一。但在传统文件系统模型中已经知足。
HDFS权限:一,HDFS ACL:与传统文件系统权限控制相似。二,Ranger 提供了单个目录与单我的之间多对多的权限模型ide

Ranger是怎么在HDFS上工做的?

Apache Ranger提供了一个和HDFS原生权限相匹配适应的受权模型。 HDFS Ranger插件会首先检测是否存在对应的受权策略对应用户受权,若是存在那么用户权限检测经过。若是没有这样的策略,那么Ranger插件会启用HDFS原生的权限体系进行权限检查(POSIX or HDFS ACL)。这种模型在Ranger中适用于HDFS和YARN服务。
image.png-50.8kB
对于 HDFS-YARN 这二者服务,默认打开Ranger鉴权模型后,先走Ranger策略,若是Ranger策略中没有相应策略,那么默认走 底层 HDFS,Yarn 使用的权限。便是HDFS ACL,YARN 自带的用户:属组提交队列鉴权。oop

Ranger的用户界面可让管理者很是容易地找到用户的受权关系(Ranger policy or native HDFS) 用户能够方便的查看审计内容(路径为:Ranger→ Audit),若是在界面上“Access Enforcer”列的内容为“Ranger-acl”,那说明Ranger的策略被应用到了用户身上。若是“Access Enforcer”列的内容为“Hadoop-acl”,表示该访问是由HDFS原生的POSIX权限和HDFS ACL提供的,只有当 Ranger 中没有对应策略才会走 HDFS-ACL。
image.png-74.9kB大数据

如何确保在Ranger启用后的安全?

当Ranger和Hadoop都安装完后,建议管理员按下面的步骤进行配置:插件

1,Change HDFS umask to 077

2,Identify directory which can be managed by Ranger policies

3,Identify directories which need to be managed by HDFS native permissions

4,Enable Ranger policy to audit all records

1,改变HDFS掩码为077,肯定哪些目录由Ranger受权管理,哪些目录由HDFS原生权限控制。启用Ranger的审计功能

2,指定哪些目录由Ranger受权

建议这些目录由Ranger来进行管理和受权(/user/hive/warehouse,/Hbase以及一些自定义的数据目录) HDFS自己的受权模型对于这些需求来讲显得捉襟见肘。 可使用chmod修改默认权限,例如:code

hdfs dfs -chmod -R 000 /user/hive/warehouse
hdfs dfs -chmod -R 000 /hbase

3,管理员能够照着这个图对其它目录进行用户受权,你能够经过如下方式进行受权验证:例如 Hive-ACL和HDFS Ranger-ACL 的权限的同步。

4,建议让HDFS原生权限管理/tmp和/user目录。这些目录一般被各类应用使用于建立用户级的目录。这里你也须要设置/user目录的权限为“700”,/tmp等目录也能够直接设置“777”:

相关文章
相关标签/搜索