0812-7.1.3-如何使用Ranger给HBase授权
文档编写目的在前面的文章中 , Fayson介绍了《如何使用Ranger 给HDFS 授权》 , 基于前面的集群环境和已有的用户信息 , 本篇文章Fayson主要介绍如何使用Ranger 给HBase 授权 。
- 文档概述
2.使用Ranger 给HBase 设置权限策略并验证
- 测试环境
2.CDP DC7.1.3
Ranger中HBase默认权限策略使用admin用户登录 页面 , 点击cm_hbase 进入该页面
文章插图
在该页面中可以看到默认有两个策略 , 第一个是hbase 用户的策略 , 默认拥有所有目录所有权限 , rangerlookup 拥有所有HBase读和Create的权限 。
文章插图
第二个策略是altas 用户拥有atlas_janus 和ATLAS_ENTITY_AUDIT_EVENTS 两个表的Read、Write、Create、admin权限策略 , 用于Atlas 服务安装初始化的使用 , 如果在HBase 中不存在这两个表 , 那么Atlas 服务则运行不正常 。 请勿随意修改这两个用户的权限策略 。
文章插图
使用Ranger 给HBase 设置权限策略并验证3.1HBase授权首先使用admin 用户登录Ranger 然后给fayson 用户授予与hbase 用户同样的权限 , 用于我们验证后面的多级授权策略
文章插图
然后使用fayson 用户创建一个测试用的HBase Namespace 名为 testspace ,确认刚刚的授权已生效
hbase(main):004:0> create_namespace 'testspace'hbase(main):005:0> list_namespace
文章插图
然后使用 fayson 登录,给testuser1 用户授权所有权限与fayson 用户权限一致 , 并且给与Delegate Admin 权限 , 并保存 。
文章插图
3.2HBase多级授权以及拒绝条件策略通过上面的步骤 , 我们使用fayson 用户给testuser1 授权了HBase的所有权限 , 然后使用进行testuser1在testspace下创建4个hbase表用于验证使用Ranger 给HBase 授权的4种策略 。
hbase(main):004:0> create "testspace:Allow" ,"name"hbase(main):005:0> create "testspace:ExcludeAllow", "name"hbase(main):006:0> create "testspace:Deny", "name"hbase(main):007:0> create "testspace:ExcludeDeny", "name"
文章插图
验证1:Allow Conditions 验证 , 我们通过登录testuser1 创建权限策略testallow , 给testuser2 授予Allow表的读、写、创建权限并验证 。
文章插图
然后使用testuser2 插入数据并查看验证Allow Conditions 已生效 。
hbase(main):005:0> create "testspace:Allow" ,"name"hbase(main):006:0> put 'testspace:Allow', 'rowKey1', 'name:column1', 'testuser2'hbase(main):007:0> scan "testspace:Allow"
文章插图
如需执行desc 查看 , 则需要给create 权限 , 否则执行desc ‘testspace:Allow’ 会如下提示:
- Chiplet如何开拓半导体技术的未来
- 使用半监督学习从研究到产品化的3个教训
- 如何编写JAVA小白第一个程序
- 如何进行不确定度估算:模型为何不确定以及如何估计不确定性水平
- 学大数据是否有前途 如何系统掌握大数据技术
- 企业建站使用服务器好还是虚拟主机好?
- Python爬虫入门第一课:如何解析网页
- 小辣椒要移花接木,金立要借尸还魂,抄袭现象如何破
- 如何使用 lshw 查看 Linux 设备信息
- 华为科普:芯片是如何设计的