一、简介
提供了一个集中式安全管理框架,并解决授权和审计。
对HDFS、Yarn、Hive、Hbase、Knox、Storm等进行细粒度的数据访问控制。
操作Ranger控制台,轻松的通过配置策略来控制用户访问权限。
二、相关介绍
1、管理中心(Ranger admin portal)
创建和修改策略,并将策略信息保存在ranger的数据库中。
各个组件会定时与admin同步策略。
授权的同时收集插件的审计信息,并将审计信息保存在HDFS或者数据库中。
内嵌tomcat,默认端口6080。
启动和停止、查看版本
ranger-admin start (stop/version)
2、插件
轻量级java程序;
直接嵌入到各个大数据组件中;将策略从管理中心拉取下来,保存到本地文件中;
当用户发起资源请求时,插件拦截这些请求,并根据本地保存的策略对请求进行评估;
插件同时会从请求中收集信息,并调用审计服务保存信息。
jar
ranger-plugins-audit-<version>.jar
ranger-plugins-common-<version>.jar
ranger-plugins-cred-<version>.jar
配置文件
ranger-<serviceType>-audit.xml
ranger-<serviceType>-security.xml
ranger-policymgr-ssl.xml
主要的配置项ranger.plugin.<serviceType>.service.name 必须,插件服务名称需要与管理中心中的服务名称相同。
ranger.plugin.<serviceType>.policy.source.impl 可选,用于拉取策略的类
ranger.plugin.<serviceType>.policy.rest.url 必须,ranger管理中心地址
ranger.plugin.<serviceType>.policy.cache.dir 必须,本地策略的存储路径
ranger.plugin.<serviceType>.policy.pollIntervalMs 可选,策略同步周期,单位毫秒,默认30000
3、用户同步(User group sync)
ranger提供同步用户和组的功能。
可以从Unix或者LDAP中同步用户信息。
ranger将同步到的用户信息保存在本地数据中,用于创建策略。
从Unix或者LDAP同步过来的用户为外部用户,从管理中心增加的用户,为内部用户。
三、授权和审计
1、策略
xasecure.add-hadoop-authorization 在插件的配置文件中,将该属性值设置为false,可以组织组件的自动授权,即如果没有对应的策略,则授权结果为禁止访问。
2、审计
授权审计、管理员审计、登陆审计、策略同步审计
授权审计信息可以存储在HDFS和solr中,从0.6版本开始已经不支持存储在数据库中,其余审计信息存储在本地数据库中。
存储在solr中的审计信息可以在管理中心显示,并且可以设置显示的截止时间,在solr中保存是为了方便查看,属于短期保存。HDFS中属于长期保存。
四、用户同步
1、配置文件
core-site.xml
ranger-ugsync-site.xml:可以配置同步时间间隔。
从unix中同步的时间间隔不能少于1分钟
从ldap中同步的时间间隔不能少于1小时。
配置用户源有两种方式,自定义实现类和默认类(选择UNIX或者IDAP)。
手动同步ranger-usersync start/stop/restart/version
ranger-ugsunc-default
五、Rest API
服务定义:对应一个组件
服务:对应集群中的一个插件
策略:service/public/v2/api/policy