Hadoop 权限管理

如下图,Hadoop访问控制分为两级,其中ServiceLevel Authorization为系统级,用于控制是否可以访问指定的服务,例如用户/组是否可以向集群提交Job,它是最基础的访问控制,优先于文件权限和mapred队列权限验证。Access Control on Job Queues在job调度策略层之上,控制mapred队列的权限。DFSPermmision用户控制文件权限。目前版本中,连接到hadoop集群的用户/组信息取决于客户端环境,即客户端主机中`whoami`和`bash –c groups`取到的用户名和组名,没有uid和gid,用户属组列表中只要有一个与集群配置的用户组相同即拥有该组权限。






1、 配置Service Level Authorization


修改core-site.xml


<property> 
 <name>hadoop.security.authorization</name> 
  <value>true</value> 
</property> 
hadoop.security.authorization=true则开启ServiceLevel Authorization,若为false则不经过任何验证,所有用户拥有全部权限。(修改此配置需要重启hadoop)


Service LevelAuthorization有9个可配置的属性,每个属性可指定拥有相应访问权限的用户或者用户组。这9个ACL属性如下(hadoop-policy.xml):






这9个属性的配置方法相同,具体如下:


每个可配置多个用户,用户之间用“,”分割;可配置多个用户组,分组之间用“,”分割,用户和分组之间用空格分割,如果只有分组,前面保留一个空格,如:


<property> 
  <name>security.job.submission.protocol.acl</name> 
  <value>alice,bobgroup1,group2</value> 
</property> 
默认情况下,这9个属性不对任何用户和分组开放。


该配置文件可使用以下命令动态加载:


(1)    更新namenode相关属性:bin/hadoop dfsadmin –refreshServiceAcl


(2)    更新jobtracker相关属性:bin/hadoopmradmin –refreshServiceAcl
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值