MAPREDUCE服务 MRS-配置ZooKeeper ZNode ACL:操作场景

时间:2024-08-01 19:24:44

操作场景

该操作指导用户对ZooKeeper的znode设置权限。

ZooKeeper通过访问控制列表(ACL)来对znode进行访问控制。ZooKeeper客户端为znode指定ACL,ZooKeeper服务器根据ACL列表判定某个请求znode的客户端是否有对应操作的权限。ACL设置涉及如下四个方面。

  • 查看ZooKeeper中znode的ACL。
  • 增加ZooKeeper中znode的ACL。
  • 修改ZooKeeper中znode的ACL。
  • 删除ZooKeeper中znode的ACL。

    ZooKeeper的ACL权限说明:

    ZooKeeper目前支持create,delete,read,write,admin五种权限,且ZooKeeper对权限的控制是znode级别的,而且不继承,即对父znode设置权限,其子znode不继承父znode的权限。ZooKeeper中znode的默认权限为world:anyone:cdrwa,即任何用户都有所有权限。

ACL有三部分:

第一部分是认证类型,如world指所有认证类型,sasl是kerberos认证类型;

第二部分是账号,如anyone指的是任何人;

第三部分是权限,如cdrwa指的是拥有所有权限。

特别的,由于普通模式启动客户端不需要认证,sasl认证类型的ACL在普通模式下将不能使用。本文所有涉及sasl方式的鉴权操作均是在安全集群中进行。

表1 Zookeeper的五种ACL

权限说明

权限简称

权限详情

创建权限

create(c)

可以在当前znode下创建子znode

删除权限

delete(d)

删除当前的znode

读权限

read(r)

获取当前znode的数据,可以列出当前znode所有的子znodes

写权限

write(w)

向当前znode写数据,写入子znode

管理权限

admin(a)

设置当前znode的权限

support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_2097.html