写在前面:
ACL节点权限控制(了解即可,因这部分都是公司运维做的,需要知道5种权限,4种方式。命令可以不记。)
进入主题:
1.ZK的节点有5种操作权限:
- CREATE、READ、WRITE、DELETE、ADMIN也就是增、删、改、查、管理权限,这5种权限简写为crwda,这5种权限中,delete是指对子节点的删除权限,其它4种权限指对自身节点的操作权限
2.身份的认证有4种方式:
- -world:默认方式,相当于全世界都能访问
- -auth:代表已经认证通过的用户(cli中可以通过addauthdigestuser:pwd来添加当前上下文中的授权用户)
- -digest:即用户名:密码这种方式认证,这也是业务系统中最常用的
- -ip:使用Ip地址认证
3.schema:
- world:只有一个用户anyone,代表所有人(默认)
- ip:使用IP地址认证
- auth:使用已添加认证的用户认证
- digest:使用用户名:密码方式认证
4.id
- world:只有一个id,anyone
- ip:通常是一个ip地址或者地址段
- auth:用户名
- digest:自定义
5.权限
- create简写为c,可以创建子节点
- delete简写为d可以删除子节点
- read简写为r可以读取节点数据及显示子节点列表
- write简写为w可以设置节点数据
- admin简写为a可以设置管理权限
6.查看ACL
- getAcl /parent
7.设置ACL
- setAcl /parentworld:anyone:r
8.添加用户
- addauth digest zhangsan:123456
- addauth digest lisi:123456
9.设置权限
- setAcl /parent auth:zhangsan:123456:r
- setAcl /parent auth:lisi:123456:rcwd
完毕。