一、前序
希望拥有一个框架,可以管理大多数框架的授权,包括:
- hdfs的目录读写权限
- 各种大数据框架中的标的权限,列级(字段)权限,甚至行级权限,函数权限(UDF)等相关资源的权限
- 是否能帮忙做书库脱敏
Ranger框架应运而生。
二、Ranger
2.1、什么是ranger
Apache Ranger是一个用来在Hadoop平台上进行监控,启动服务,以及全方位数据安全访问管理的安全框架。
Ranger愿景是在Apache Hadoop生态系统中提供全面的安全管理。随着企业业务的扩展,企业可能在多用户环境中运行多个工作任务,这就要求Hadoop内的数据安全性需要扩展为同时支持多种不同的需求进行数据访问,同时还需要提供一个可以可以对安全策略进行集中管理,配置和监控用户访问的框架。Ranger由此产生。
Ranger官网:https://ranger.apache.org
2.1、ranger目标
- 允许用户使用Web UI或者Rest API对所有和安全相关的任务进行集中化的管理
- 允许用户使用一个管理工具对操作Hadoop体系中的组件和工具的行为进行细粒度的授权
- 支持Hadoop体系中各个组件的授权认证标准
- 增强了对不同业务场景需求的授权方法支持,例如基于角色的授权或者基于属性的授权
- 支持对Hadoop组件所涉及安全的审计行为的集中化管理
2.3、ranger支持的框架
- Apache Hadoop
- Apache Hive
- Apache HBase
- APache Storm
- Apache Knox
- Apache Solr
- Apache Kafka
- NIFI
- YARN
2.4、ranger的架构
2.5、ranger的工作原理
Ranger的核心是Web应用程序,也称为Ranger Admin,此模块由管理策略、审计日志和报告三部分组成。
管理员角色的用户可以通过Ranger Admin提供的web界面或REST API来定制策略。这些策略会由Ranger提供的轻量级的针对不同Hadoop体系中组件的插件来执行。插件会在Hadoop不同组件的核心进程启动后,启动对应的插件进程来进行安全管理。
2.6、ranger组件细分
- Ranger UserSync
同步Unix(当前那台服务器上用户和用户组)或者LDAP中的用户和用户组的信息到Ranger用户管理中。
使用Ranger UserSync同步集群节点上的Unix操作系统用户
Ranger UserSync是Ranger中一个重要的组件,它支持将Unix系统用户或LDAP用户同步到Ranger WebUI中
- Ranger Admin
提供Web UI配置权限
与Ranger Plugin进行交互,将权限同步至Ranger Plugin所在节点
你看到的User Source里写的In