传统的文件系统中,ACL 分为两个维度,一个是属组,一个是权限,子目录/文件默认继承父目录的 ACL。而在 Zookeeper 中,node 的 ACL 是没有继承关系的,是独立控制的。Zookeeper 的 ACL,可以从三个维度来理解:一是 scheme; 二是 user; 三是 permission,通常表示为 scheme:id:permissions, 下面从这三个方面分别来介绍:
1) scheme: scheme 对应于采用哪种方案来进行权限管理,zookeeper 实现了一个pluggable 的 ACL 方案,可以通过扩展 scheme,来扩展 ACL 的机制。
2) User:与 scheme 是紧密相关的,具体的情况在上面介绍 scheme 的过程都已介绍,这里不再赘述。
3) permission: zookeeper 目前支持下面一些权限: