1.创建一个变量存放模式信息, private static final String MODE = "digest"; //ACL模式
 
2.在一个类的构造函数内放入初始化信息

public List<ACL> createACL() throws NoSuchAlgorithmException, IOException{
List<ACL> acls = new ArrayList<ACL>();
//初始化一个root用户
//ifm 为系统的名称,这段话的意思是只有ifm这个系统 拥有所有的权限CRUD
Id superId = new Id(MODE, DigestAuthenticationProvider.generateDigest(aclAdmin));
//初始化一个root用户
//这个用户的权限是只读权限,不具增删改权限,而且world代表所有用户可以读
Id userId = new Id("world","anyone");
 
ACL acl = new ACL(ZooDefs.Perms.ALL, superId);
ACL acl2 = new ACL(ZooDefs.Perms.READ, userId);
 
acls.add(acl);
acls.add(acl2);
 
return acls;
}
 
3.引用acl权限
aaarticlea/png;base64,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" alt="" />
 如上图,是Zookeeper的配置文件

//aclAdmin是Zookeeper配置文件的一个属性

aclAdmin = properties.getProperty("zookeeperAclAdmin");

对象.addAuthInfo(MODE, aclAdmin.getBytes());

最新文章

  1. (十一)socket、connect、bind函数详解
  2. ionic 通过PouchDB + SQLite来实现app的本地存储(Local Storage)
  3. Xamarin.Android之UI Test简单入门
  4. HDU #5733 tetrahedron
  5. 【BZOJ】1015: [JSOI2008]星球大战starwar
  6. 读书笔记-----Java并发编程实战(二)对象的共享
  7. [Jquery] jQuery.cookie帮助类 (转载)
  8. eclipse/myeclipse选中编辑区域文件,Package Explorer定位文件所在项目及目录
  9. docker 镜像中包含数据库环境和运行环境
  10. h3c dhcp snooping
  11. iOS 英语
  12. 移动端 去除onclick点击事件出现的背景色框
  13. Apache Struts2高危漏洞(S2-057CVE-2018-11776)
  14. 使用requests模块保存网络上的图片
  15. Ext.js项目(二)
  16. Delphi TStringHelper用法详解
  17. ucosii笔记(一)
  18. bzoj千题计划233:bzoj 1304: [CQOI2009]叶子的染色
  19. php版本CKEditor 4和CKFinder安装及配置
  20. linux系统编程:线程原语

热门文章

  1. TableView 键盘弹起冲突
  2. 搭建私有CA并基于OpenSSL实现双向身份认证
  3. mysql的导入导出操作
  4. Delphi 数组与记录类型
  5. Python之路:进程、线程
  6. [易学易懂系列|rustlang语言|零基础|快速入门|(14)|Impls &amp; Traits实现与特征]
  7. pikachu-file
  8. 基于Redis实现分布式锁(转载)
  9. idea 下获取路径下文件的方法
  10. 【洛谷P2147】洞穴勘测