zookeeper setAcl -R 命令行形式,无法递归执行成功

发表于: 2022-01-05   最后更新时间: 2022-01-05 17:30:02   2,100 游览

诉求:在zk3.6.1版本使用shell(必须用shell)的形式,digest模式为"/"目录下所有znode赋予acl认证;

/usr/local/zookeeper/bin/zkCli.sh -server 172.19.64.111:2181 setAcl -R "/a" digest:sjzghw:PCN7v3oNcN6YJ5OsRV7m09RFV/E=:cdrwa

[zk: localhost:2181(CONNECTED) 0] addauth digest sjzghw:123456
[zk: localhost:2181(CONNECTED) 1] 
[zk: localhost:2181(CONNECTED) 1] getAcl /a/001
'world,'anyone
: cdrwa

如上形式,只能保障"/a"变更为digest模式,但/a/001 /a/002无法修改,依旧处于world:anyone

有什么形式能实现此诉求。

发表于 2022-01-05
/usr/local/zookeeper/bin/zkCli.sh -server 172.19.64.111:2181 << EOF
addauth digest sjzghw:123456
setAcl -R "/a" digest:sjzghw:PCN7v3oNcN6YJ5OsRV7m09RFV/E=:cdrwa
getAcl /
quit
EOF

采用这种形式就可以了

你的答案

查看zookeeper相关的其他问题或提一个您自己的问题