hive表级权限控制_Apache Ranger及Hive权限控制

一、Ranger概述

1.Ranger简介

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

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

2.Ranger包含以下组件

Ranger Admin 用户管理策略,提供WebUI和RestFul接口

Ranger UserSync 用于将Unix系统或LDAP用户/组同步到RangerAdmin

Ranger TagSync 同步Atlas中的Tag信息

Ranger KMS

000.jpg

3.Ranger依赖的组件:

JDK 运行RangerAdmin RangerKMS

RDBMS 1.存储授权策略 2.存储Ranger 用户/组 3.存储审核日志

Solr(可选) 存储审核日志

HDFS(可选) 存储审核日志

Kerberos(可选) 确保所有请求都被认证

4.目前Ranger0.7支持的Plugin

HDFS

YARN

SOLR

ATLAS

HBASE

KNOX

KAFKA

HIVE

STORM

NIFI

二、Ranger编译安装

说明: Ranger可以在Ambari上直接安装。开启AmbariHivePlugin也可以直接在页面上操作。

但如果跟ApacheHive集成的话,需要先编译出ApacheRanger的HivePlugin来

1.Apache Ranger编译

#Install maven git gcc mysql

git clone https://github.com/apache/ranger.git

cd ranger

git checkout release-ranger-0.7.1

mvn clean compile package assembly:assembly install -DskipTests

ls target

2.通过Ambari安装Ranger

前置条件:

1.必须有 MySQL/Oracle/Postgres/MSSQL/SQL Anywhere Server 数据库实例

2.在RangerAdmin主机上 必须安装DB Client

3.确保DB Admin用户可以再其他机器上登陆(用来创建ranger用户)

4.执行下面的命令 导入JDBC驱动 ambari-server setup --jdbc-db={database-type} --jdbc-driver={/jdbc/driver/path}

#导入JDBC驱动:

#(MySQL JDBC Driver Jar包下载页面:https://dev.mysql.com/downloads/connector/j/5.0.html)

wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.0.8.tar.gz

tar -zxvf mysql-connector-java-5.0.8.tar.gz

ambari-server setup --jdbc-db=mysql --jdbc-driver=mysql-connector-java-5.0.8/mysql-connector-java-5.0.8-bin.jar

3.安装RangerHivePlugin

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

#AmbariHive可直接在Ambari页面上操作

#ApacheHive的话 需要执行以下命令:

# 1.拷贝RangerHivePlugin安装包

cp target/ranger-0.7.1-hive-plugin.tar.gz /usr/apache

tar -zxvf /usr/apache/ranger-0.7.1-hive-plugin.tar.gz

# 2.编辑install.properties文件

#编辑POLICY_MGR_URL 指向RangerAdmin 例如 POLICY_MGR_URL=http://l-node1.data.beta.cn0:6080

#编辑REPOSITORY_NAME 要与RangerAdmin中ServiceName配置一致 例如 REPOSITORY_NAME=hivebeta

vim /usr/apache/ranger-0.7.1-hive-plugin/install.properties

# 3.配置JAVA_HOME HIVE_HOME 环境变量

echo "export JAVA_HOME=/usr/java/jdk1.8.0_141" >> /etc/bashrc

echo "export HIVE_HOME=/usr/apache/hive" >> /etc/bashrc

source /etc/bashrc

# 4.开启plugin

sudo sh /usr/apache/ranger-0.7.1-hive-plugin/enable-hive-plugin.sh

#显示Ranger Plugin for hive has been enabled. Please restart hive to ensure that changes are effective.即成功

# 5.重启HiveServer

4.RangerAdmin上面配置要管理的HiveServer实例

001.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值