本文介绍如何将Spark集成到Ranger,以及相关的权限配置。
前提条件
已创建集群,并选择了Ranger服务,详情请参见
创建集群。
背景信息
Spark集成Ranger进行权限控制,仅适用于通过Spark ThriftServer执行Spark SQL作业。例如,使用Spark的Beeline客户端或JDBC接口,通过Spark
ThriftServer提交Spark SQL作业。
Spark SQL集成Ranger
- 在阿里云E-MapReduce控制台,配置Hive集成Ranger,详情请参见Hive配置。
在Ranger中,因为Spark SQL与Hive共享权限配置,所以只需要将Hive集成Ranger,便可以通过Ranger控制Spark SQL的权限。
- Ranger启用Spark。
- 在阿里云E-MapReduce控制台的集群管理页面,单击相应集群所在行的详情。
- 在左侧导航栏单击。
- 单击右侧的操作下拉菜单,选择启用Spark。
- 在执行集群操作对话框设置相关参数,然后单击确定。在确认对话框,单击确定。
单击右上角查看操作历史查看任务进度,等待任务完成。
- 重启Spark ThriftServer。
- 在左侧导航栏单击。
- 在Spark集群服务页面,单击右侧的。
- 在执行集群操作对话框设置相关参数,然后单击确定。在确认对话框,单击确定。
单击右上角查看操作历史查看任务进度,等待任务完成。
权限配置示例(Ranger UI配置相关权限)
例如:给用户foo授予表testdb.test的a列Select权限。
- 进入Ranger UI页面,详情请参见概述。
- 在Ranger UI页面,单击配置好的emr-hive。
- 单击右上角的Add New Policy。
- 配置权限。

参数 |
说明 |
Policy Name |
策略名称,可以自定义。 |
database |
添加Hive中的数据库,例如testdb。 |
table |
添加表,例如test。 |
Hive Column |
添加列名。填写星号(*)时表示所有列。 |
Select Group |
指定添加此策略的用户组。 |
Select User |
指定添加此策略的用户。 |
Permissions |
选择授予的权限。 |
- 单击Add。
添加Policy后,实现对foo的授权。foo用户即可以访问testdb.test表。
说明 添加、删除或修改Policy后,需要等待约一分钟至授权生效。
在文档使用中是否遇到以下问题
更多建议
匿名提交