Zookeeper_ACL

getAcl path 查看某个node的权限

设置权限
1 world方式
setAcl <path> world:anyone:<acl>
例如 setAcl /node1 world:anyone:cdrwa

2 ip方式
setAcl <path> ip:<ip>:<acl>
例如 #设置IP:192.168.100.1 拥有所有权限, ip可用通配符*描述规则 如192.168.0.0/16匹配192.168.*.*
setAcl /node2 ip:192.168.100.1:cdrwa

3 auth方式
addauth digest <user>:<password> #添加认证用户
setAcl <path> auth:<user>:<acl>
例如 addauth digest zhao:123456 #添加认证用户(登录用户)
setAcl /test2 auth:zhao:cdrwa

4 Digest方案
不需要用户登录,设置加密密码 设置权限
setAcl <path> digest:<user>:<password>:<acl>
这里的密码是经过SHA1及BASE64处理的密文,在SHELL中可以通过以下命令计算:
echo -n <user>:<password> | openssl dgst -binary -sha1 | openssl base64

例如:先来计算一个密文
echo -n zhao:123456 | openssl dgst -binary -sha1 | openssl base64
e+fGhah6NKilpckg4lqkDPi/IPs=
create /test1 "test1"
setAcl /test1 digest:zhao:e+fGhah6NKilpckg4lqkDPi/IPs=:cdrwa


setAcl /test1 digest:diyo:6w1e9um64Rwx0nMBmr5IYSZCzTc=:cdrwa
6w1e9um64Rwx0nMBmr5IYSZCzTc=

get /test1 #无权限
addauth digest zhao:123456 #添加认证用户
get /test1 #成功读取

 

posted @ 2019-07-03 19:03  DiYong  阅读(186)  评论(0编辑  收藏  举报