程序员

CephFS 权限与访问控制

2018-06-24  本文已影响0人  莫茫Link

添加用户

添加用户jerry,lucy:
jerry只有对/jerry路径下的文件具有读写权限,对其他路径下的文件只有读的权限
lucy类似

[root@ceph-1 mnt]# ceph auth get-or-create client.jerry mon 'allow r' mds 'allow r, allow rw path=/jerry' osd 'allow rw'
[client.jerry]
    key = AQCVtyxbal5PABAA+9CjbdyXsUiFdbvmFiZPIg==
[root@ceph-1 mnt]# ceph auth get-or-create client.lucy mon 'allow r' mds 'allow r, allow rw path=/lucy' osd 'allow rw'
[client.lucy]
    key = AQCjtyxbVNbUHBAAii6mTXjOTLIG7K3p7RRDIQ==

获取权限列表

[root@ceph-1 mnt]# ceph auth list

删除某个用户

[root@ceph-1 mnt]# ceph auth del client.lucy

获取某个用户的key

[root@ceph-1 mnt]# ceph auth get-key client.lucy
AQCjtyxbVNbUHBAAii6mTXjOTLIG7K3p7RRDIQ==

修改用户权限

[root@ceph-1 ~]# ceph auth caps client.lucy mon 'allow r' mds 'allow r, allow rw path=/lucy, allow rw path=/jerry/jerry_share' osd 'allow rw'

BUG

  1. 仅读权限的目录,仍然可以通过追加的方式写入,这个应该是cephfs的bug
[root@ceph-1 mnt]# mount -t ceph ceph-1:6789,ceph-2:6789,ceph-3:6789:/ /mnt/lucy -o name=lucy,secret=AQCjtyxbVNbUHBAAii6mTXjOTLIG7K3p7RRDIQ==
mount error 13 = Permission denied

lucy 在jerry的目录下可查看文件,不可以vim进行修改or新建文件,but echo >> 可以追加。。
之后测试又发现:虽然可以追加,但其实内容并没有放入cephfs之中,只是本地看上去改了,其实没改。。(初步感觉是由于[mds] allow r的设置,如果把这个去掉,那么这种情况就不存在了,后续会继续研究)

注意

  1. 当用java api操作cephfs时,api无法指定新建文件or目录的所属用户or所属组,这两个属性取决于运行java程序时的当前用户(uid)及其所属的用户组(gid)
  2. 经过测试发现,cephfs文件or目录的权限是linux本身用户权限和cephfs用户权限的交集
  3. 修改用户权限后,在本地需要重新挂载才可生效
  4. 建目录,设置权限无需前后顺序
上一篇 下一篇

猜你喜欢

热点阅读