ZooKeeper学习之zookeeper的ACL(AUTH)

本文深入解析Zookeeper的访问控制列表(ACL),涵盖权限模式、授权对象及权限类型。详细介绍IP、Digest、World和Super四种权限模式,以及create、delete、read、write、admin五种操作权限,并提供设置ACL的两种方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

zookeeper的ACL(AUTH)
ACL(Access Control List),Zookeeper作为一个分布式协调框架,其内部存储的都是一些关于分布式
系统运行时状态的元数据,尤其是设计到一些分布式锁,Master选举和协调等应用场景。我们需要有
效地保障Zookeeper中的数据安全,Zookeeper提供了三种模式。权限模式,授权对象,权限。
权限模式:Scheme,开发人员最多使用的如下四种权限模式:
    IP:ip模式通过ip地址粒度进行权限控制模式,例如配置了:192.168.110.135即表示权限控
           制都是针对这个ip地址的,同时也支持按网段分配,比如:192.168.110.*
    Digest:digest是最常用的权限控制模式,也更符合我们对权限控制的认识,其类似于
               "username:password"形式的权限标识进行权限配置。ZK会对形成的权限标识先后进
                行两次编码处理,粉笔是SHA-1加密算法和Base64编码。
        World:World是一直最开放的权限控制模式。这种模式可以看做为特殊的Digest,他仅仅是
               一个标识而已。
        Super:超级用户模式,在超级用户模式下可以对ZK任意进行操作。
 
权限对象:值得是权限赋予的用户或者是一个指定的实体,例如ip地址或机器等。在不同的模式下,
授权对象是不同的。这种模式和权限对象一一对应。
 
权限:权限就是指那些通过权限检测后可以被允许执行的操作,在ZK中,对数据的操作权限分为以下
五大类:create,delete,read,write,admin

设置访问控制:

方式一:(推荐)
1)增加一个认证用户
addauth digest 用户名:密码明文
eg. addauth digest user1:password1
2)设置权限
setAcl /path auth:用户名:密码明文:权限
eg. setAcl /test auth:user1:password1:cdrwa
3)查看Acl设置
getAcl /path

方式二:
setAcl /path digest:用户名:密码密文:权限

注:这里的加密规则是SHA1加密,然后base64编码。  加密代码

DigestAuthenticationProvider.generateDigest("xmr:123456")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值