Zookeeper(2)---节点属性、监听和权限 (2)

基于scheme:id:permission的方式进行权限控制。scheme表示授权模式、id模式对应值、permission即具体的增删改权限位。

 

scheme:认证模型

 

world   开放模式, world表示全世界都可以访问(这是默认设置)

 

ip        ip模式,  限定客户端IP防问

 

auth     用户密码认证模式,只有在会话中添加了认证才可以防问

 

digest    auth类似,区别在于auth用明文密码,而digest 用sha-1+base64加密后的密码

 

 

 

permission权限位

 

c   CREATE 可以创建子节点

 

d  DELETE 可以删除子节点(仅下一级节点)

 

r  READ 可以读取节点数据及显示子节点列表

 

w  WRITE 可以设置节点数据

 

a  ADMIN 可以设置节点访问控制列表权限

 

acl 相关命令:

 

getAcl getAcl <path> 读取ACL权限

 

setAcl setAcl <path> <acl> 设置ACL权限

 

addauth   addauth <scheme> <auth> 添加认证用户(addauth digest <用户名>:<密码>)

 

 

 

开放模式:只有一个值anyone, 未设置写权限,无法写入数据:

Zookeeper(2)---节点属性、监听和权限

 

 

 

Ip模式:

 

setAcl /apps ip:127.0.0.1:ra

 

setAcl /apps ip:127.0.0.1/101:ra 网段设置

 

 

digest 权限示例:

 

setAcl <path> digest :<用户名>:<密钥>:<权限位>

addauth digest <用户名>:<密码>

 

1:密钥 通过sha1与base64组合加密码生成,可通过以下命令生成

 

echo -n <用户名>:<密码> | openssl dgst -binary -sha1 | openssl base64

 

2:为节点设置digest 权限后,访问前必须执行addauth,当前会话才可以防问。

 

 

 

 

ACL的特殊说明:

权限仅对当前节点有效,不会让子节点继承。如限制了IP防问A节点,但不妨碍该IP防问A的子节点

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyzpsy.html