6. ZooKeeper访问控制列表
ZooKeeper的数据模型提供了ACL机制来控制访问znode。 在创建znode时,ACL将确定你可以在znode上执行的各种操作的权限。 ZooKeeper ACL模型与Unix / Linux文件许可类似,允许或阻止通过设置/取消权限位在znode上执行操作。 但是,ZooKeeper节点并不具有Unix/Linux文件系统中所有权的概念。 ACL是基于客户端和ZooKeeper服务的认证机制来确定的。
ZooKeeper基于ACL提供了以下内置认证机制:
- World:这代表任何人都可以连接到ZooKeeper服务
- Auth:这表示任何经过身份验证的用户,但不使用任何ID
- Digest:这代表了用户名和密码的认证方式
- IP address:这表示使用客户端的IP地址进行身份验证
除了前面列出的认证方案外,ZooKeeper还支持可插入的认证机制,如果需要,可以集成第三方认证方案。 ZooKeeper中的任何认证方案都包含以下两个主要认证操作:
首先,ZooKeeper中的认证框架对客户端进行认证。 客户端验证发生在客户端通过客户端信息验证连接到ZooKeeper服务时。
其次,认证框架查找ACL中与客户端对应的表项。 ACL条目是由
<IDs,Permissions>组成的对,其中ID是标识客户端的字符串。
有关znode ACL的重要的一点是,与特定znode关联的ACL不会传播给其子节点。 客户使用ZooKeeper进行认证是可选的; 如果与znode相关的ACL需要客户端进行身份验证,则必须使用前面提到的身份验证机制进行身份验证。 ACL是身份和一组权限组合的认证机制。
ZooKeeper的ACL支持以下权限:
| 操作 | ACL 权限 |
|---|---|
| CREATE | 创建一个子节点 |
| READ | 获取子节点列表和与znode相关的数据 |
| WRITE | 将数据设置(写入)到znode |
| DELETE | 删除一个孩子子节点 |
| ADMIN | 设置ACL(权限) |
任何连接到ZooKeeper服务的客户端都有权检查是否存在znode。 这个exist操作是不需要权限的,它允许检索一个znode的stat结构。
ZooKeeper中有许多预定义的ACL。 这些由ZooKeeper ACL定义的ID如下表所示:
| ACL | 权限 |
|---|---|
| ANYONE_ID_UNSAFE | 这个ID代表任何人 |
| AUTH_IDS | 这是用来设置ACL,用被认证的客户端的ID代替 |
| OPEN_ACL_UNSAFE | 这表示完全打开的ACL,并授予除ADMIN权限之外的所有权限 |
| CREATOR_ALL_ACL | 该ACL将所有权限授予znode的创建者 |
| READ_ACL_UNSAFE | 这个ACL赋予所有人读取的能力 |
6. ZooKeeper访问控制列表的更多相关文章
- Centos下ACL(访问控制列表)介绍(转)
我们知道,在Linux操作系统中,传统的权限管理分是以三种身份(属主.属組以及其它人)搭配三种权限(可读.可写以及可执行),并且搭配三种特殊权限(SUID,SGID,SBIT),来实现对系统的安全保护 ...
- Add-VMNetworkAdapterAcl(添加访问控制列表)
Add-VMNetworkAdapterAclCreates an ACL to apply to the traffic through a virtual machine network adap ...
- [转载]ACM(访问控制模型),Security Identifiers(SID),Security Descriptors(安全描述符),ACL(访问控制列表),Access Tokens(访问令牌)
对于<windows核心编程>中的只言片语无法驱散心中的疑惑.就让MSDN中的解释给我们一盏明灯吧.如果要很详细的介绍,还是到MSDN仔细的看吧,我只是大体用容易理解的语言描述一下. wi ...
- 由于 web 服务器上此资源的访问控制列表(acl)配置或加密设置,您无权查看此目录或页面。
场景:IIS中遇到无法预览的有关问题(HTTP 异常 401.3 - Unauthorized 由于 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置 IIS中遇到无法预览的问题(HTTP ...
- CCNA网络工程师学习进程(8)访问控制列表ACL
前面几节我们介绍了路由器的路由配置,接下来几节我们将介绍路由器的高级配置应用,包括ACL.NAT.DHCP.PPP.VPN和远程连接等的配置. (1)ACL概述: ACL(Access C ...
- 浅谈访问控制列表(ACL)
1.ACL简介2.前期准备3.ACL的基本操作:添加和修改4.ACL的其他功能:删除和覆盖5.目录的默认ACL6.备份和恢复ACL7.结束语 1.ACL简介 用户权限管理始终是Linux系统管理中最重 ...
- windows访问控制列表 --ACL(Access Control List)
1.定义 ACL是一个windows中的表示用户(组)权限的列表. Access Control List(ACL) Access Control Entry(ACE) ... 2.分类 ACL分为两 ...
- 神州数码标准访问控制列表配置(ACL)
实验要求:熟练掌握标准访问控制列表配置方法 拓扑如下 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface s0/1 进入端口 ip ad ...
- 用访问控制列表(ACL)实现包过滤
用访问控制列表(ACL)实现包过滤 一.ACL概述 1.ACL(Access Control List,访问控制列表)是用来实现数据包识别功能的 2.ACL可以应用于诸多方面 a>.b包过滤 ...
随机推荐
- 最好用的css辅助工具——SASS&LESS
前言 首先,小编给大家解释一下什么是SCSS和LESS,Sass 是一款强化 CSS 的辅助工具,它在 CSS 语法的基础上增加了变量 (variables).嵌套 (nested rules).混合 ...
- Centos 7.4 下初探Zabbix安装
工作一波停一波起,感觉离开.net好久了. 最近工作中发现服务器监视都是用了zabbix,对于我这类不懂的狠狠弥补了一下知识. 无意发现zabbix带有api,就想开发个工具调用api来着.可是api ...
- VBA 中窗体模式切换,一次设计2种表现
Sub ModelChange() Then DoCmd.RunCommand acCmdSubformFormView ''''就这句 Me.Form.AllowEdits = True ' Mod ...
- [mysql]ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value 解决方法
在MySQL数据库中的mysql.user表中使用insert语句添加新用户时,可能会出现以下错误: ERROR 1364 (HY000): Field 'ssl_cipher' doesn't ha ...
- Python统计列表中的重复项出现的次数的方法
本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下:对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在 ...
- 从实践的角度理解cookie的几个属性
cookie的处理流程大致分为以下几步: 1.浏览器初次请求服务器. 2.服务器认为有必要设置cookie,通过响应报文首部:Set-Cookie告知浏览器,cookie的内容. 3.浏览器本地保存( ...
- UWP 手绘视频创作工具技术分享系列 - 位图的绘制
前面我们针对 SVG 的解析和绘制做了介绍,SVG 是图片的一种形式,而另一种很重要的图片是:位图,包括 png.jpeg.bmp 等格式.位图的基本规则是,组成的基本元素是像素点,由宽度 * 高度个 ...
- C#编译器和CLI的安装
为了完成C#程序编译和运行,需要安装代码对应版本的编译器和CLI(公共语言框架)平台. (部分内容摘自<C#本质论>) 针对主流的CLI平台(Microsoft .NET),有两种安装方案 ...
- IO基础内容(File)
JavaIO基础内容 IO技术概述 Output 把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 Input 把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操 ...
- 脱壳第一讲,手工脱壳ASPack2.12的壳.ESP定律
脱壳第一讲,手工脱壳ASPack2.12的壳.ESP定律 一丶什么是ESP定律 首先我们要明白什么是壳.壳的作用就是加密PE的. 而ESP定律就是壳在加密之前,肯定会保存所有寄存器环境,而出来的时候, ...