zookeeper-3.4.10.tar.gz部署linux服务器后怎么创建账号设置acl权限
在ZooKeeper中,ACL(Access Control Lists)用于控制对znodes的访问权限。ZooKeeper支持不同的认证方式,例如:IP、Digest(用户名和密码的方式)、world(开放世界,任何人都可以访问)等。下面是如何在ZooKeeper中创建账号并设置ACL权限的步骤:
-
安装ZooKeeper:
确保你已经将ZooKeeper的tar.gz包解压并配置好了ZooKeeper的环境。配置包括设置conf/zoo.cfg文件,启动ZooKeeper服务等。 -
启动ZooKeeper服务:
使用以下命令启动ZooKeeper服务:./bin/zkServer.sh start -
连接到ZooKeeper服务:
使用ZooKeeper的客户端连接到服务:./bin/zkCli.sh -server 127.0.0.1:2181 -
创建账号:
ZooKeeper没有传统意义上的“账号”概念,但可以使用digest认证方式来模拟账号密码的效果。例如,创建一个用户名为user1,密码为password1的账号,可以使用以下命令:addauth digest user1:password1 -
设置ACL:
在ZooKeeper中,可以使用setAcl命令来设置特定znode的ACL。例如,如果你想设置一个znode/example,使得只有user1有权限读写,可以使用以下命令:setAcl /example digest:user1:password1:crwda这里
crwda分别代表创建(create)、读取(read)、写入(write)、删除(delete)、管理(admin)权限。 -
验证ACL:
为了验证ACL是否设置成功,可以尝试使用不同的认证信息来访问该znode。如果没有使用正确的用户名和密码,应该会被拒绝访问。
请注意,上述步骤中的密码需要通过SHA1加密后的摘要,而不是明文密码。在实际使用setAcl命令时,需要将user1:password1替换为对应的摘要字符串。可以使用ZooKeeper自带的DigestAuthenticationProvider工具来生成这个摘要字符串:
java -cp zookeeper.jar:lib/log4j-1.2.17.jar:lib/slf4j-log4j12-1.7.25.jar:lib/slf4j-api-1.7.25.jar:conf org.apache.zookeeper.server.auth.DigestAuthenticationProvider user1:password1
这将输出一个字符串,比如user1:BASE64STRING,你需要使用这个输出值来替换setAcl命令中

本文详细介绍了如何在Zookeeper3.4.10部署的Linux服务器上创建账号并使用Digest认证设置ACL权限,以及如何在ClickHouse和DolphinScheduler配置中集成ZooKeeper的ACL认证。
1137

被折叠的 条评论
为什么被折叠?



