Hdfs 的 ACL 基本理解

首先ACL (access control list) 中文 “权限访问控制列表”, 简单来说,就是记录 HDFS 的文件或者文件夹 针对 owner,group, others 三个角色的权限是什么(xrw)

类似于,我们常常查看文件的权限 ll 命令, 有九位 比如:xrw--x-r

hdfs 默认是开启文件访问权限的,就是按照rwx 来进行判断是否有读写执行权限。然后根据用户拥有者, 同组用户, 非同组用户 来进行权限管理

 

然而ACL 是一个对于HDFS 的可选启动项, 目的: 制定 “除文件owner, group,ohther" 这固定的三类之外的 角色权限;

比如 用户A (默认组也叫A)创建了一个文件 test.txt;

那么不使用ACL 的情况下, hdfs 可以判断3 种情况

1 访问者是否是A?

2. 访问者是否在 A组?

3.如果都不是,那要看 other 那部分的权限是什么。

那么问题就来了, 把访问者 “非A, 又非A组的” (以下称为 用户X)全 划分到other 类型是不是有点 过分, 有点太鲁莽;

为了继续访问 目标文件

解决办法, 把 追加到 A组里, 这样就可以解决了;前提是A 组 的权限是否 适合 用户X

 

假设:如果 遇到 读写分离 的情况下:

A 组本来 是 -r- (只读权限的),用户X 现在是需要打开 -w- 写权限;

那么把  用户X 加到 A组就不合适了

于是可以使用 ACL 

再不改变本身owner+group 那些权限以外;再允许这个文件 被 用户X (或者X 这个组)  w(write) 的权限

命令:

hdfs fs -setfacl -user:(username):(w/r/x) /目标文件 

hdfs fs -setfacl -group:(username):(w/r/x) /目标文件 

 

hsdf dfs -getfacl  /目标文件   #用来查看目前这个文件的权限有哪些

 

总结: ACL 丰富了hdfs 默认的权限控制机制下的 更多可能。

 

Hadoop从2.4.0版本开始支持hdfs的ACL 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值