ACL(访问权限列表)
ZooKeeper 支持以下权限:
CREATE: 能创建子节点
READ:能获取节点数据和列出其子节点
WRITE: 能设置节点数据
DELETE: 能删除子节点
ADMIN: 能设置权限
ZooKeeper 客户端有3种标准的ACL:
OPEN_ACL_UNSAFE :任何应用程序在节点上可进行任何操作,能创建、列出和删除它的子节点。对任何应用程序
READ_ACL_UNSAFE是只读的
CREATE_ALL_ACL赋予了节点的创建者所有的权限,在创建者采用此ACL创建节点之前,已经被服务器所认证(例如,采用 “ digest”方案)。
ACL不是递归的,它只针对当前节点,对子节点没有任何影响。ACL毕竟仅仅是访问控制,并非完善的权限管理,通过这种方式做多集群隔离,还有很多局限性:
很多依赖zookeeper的开源框架也没有加入对ACL的支持,例如hbase,storm。所以权限控制只需了解即可