1.acl(access control lists)
針對節點設定相關讀寫等許可權,目的為了保障資料的安全性。
許可權permissions可以指定不同的許可權範圍以及角色。
2.acl命令列
getacl:獲取某個節點的acl許可權資訊。
setacl:設定某個節點的acl許可權資訊。
addauth:輸入認證授權資訊,註冊時輸入明文密碼(登入),但是在zk系統裡,密碼是以加密形式存在的(add digest shuang:shuang)。
3.acl的構成
zk的acl通過【scheme?permssions】來構成許可權列表
schema:代表採用的某種許可權機制。
id:代表允許訪問的使用者。
permissions:許可權組合字串。
4.acl的構成-schema
world:world下只有乙個id,即只有乙個使用者,也就是anyone,那麼組合的寫法就是world:anyone:[permissions]。
auth:代表認證登入,需要註冊使用者有許可權就可以,形式為anth:user:password:[permissions]。
digest:需要對密碼進行加密才能訪問,組合形式為digest:username:base64(sha1(password)):[permissions]。
auth與digest區別:
前者明文,後者密文
setacl /path auth:lee:lee:cdrwa
setacl /path digest:lee:base64(sha1(password))cdrwa是等價的,在通過addauth digest lee:lee後都能操作指定節點額許可權
ip:當設定ip為指定ip位址,此時限制ip進行訪問,例如:ip:192.168.1.1:[permissions]。
super:代表超級管理員,擁有所有的許可權。
zkserver.sh
「-dzookeeper.digestauthenticationprovider.superdigest=shuang:qvg30dx2amosu9qmjezc6rly/h8=」
5.acl的構成-permissions(crdwa)
create:建立子節點。
read:獲取節點/子節點。
delete:刪除子節點。
write:設定節點資料。
admin:設定許可權。
6.設定許可權命令world
setacl /imooc/anjunshuang world:anyone:cdrwa
7.設定許可權命令auth
addauth digest imooc:imooc(設定使用者密碼,登入操作)
setacl /imooc/anjunshuang auth:imooc:imooc:cdrwa
8.設定許可權命令digest
setacl /imooc digest:ajs:srd9oddowfoouysb7idrz5epo0e=:cdra
9.設定許可權命令ip
ip:192.168.1.1:cdrwa
10.acl命令列super
1.修改zkserver.cmd或者zkserver.sh增加super管理員。
2.重啟zkserver
11.acl的使用場景
開發/測試環境分離,開發者無權操作測試庫的節點,只能看。
生產環境上控制指定ip的服務可以訪問相關節點,防止混亂。
12.zk四字命令
zk可以通過它自身提供的簡寫命令來和伺服器進行互動。
需要使用到nc命令,安裝:yum install nc。
echo stat | nc 127.0.0.1 2181 linux命令,檢視狀態資訊和mode。
ruok 檢視當前服務是否啟動,返回imok。
dump 列出未經處理的會話和臨時節點。
conf 檢視伺服器配置。
cons 展示連線到伺服器的客戶端資訊。
envi 環境變數。
mntr 監控zk健康資訊。
wchs 展示watcher的資訊。
wchc 與wchp session與watch及path與watch的資訊。
ZooKeeper許可權控制
目前在公司內部使用zookeeper的地方越來越多,應用大多喜歡自己部署一套zk集群來使用。考慮到zk的高可用,並且一套zk集群至少3臺機器,那麼每個應用,尤其是一些非核心應用都自己去部署一套的話,對資源利用率很低。另外,隨著zk容災的提出,單套zk集群使用的機器量會更大,運維人員開始 對這個情況擔...
zookeeper之許可權控制 ACL
1.許可權控制 zookeeper集群中,通常是由乙個統一的zookeeper集群來為若干個應用提供服務。而此時,各應用之間不存在資料的共享操作場景。因此為了避免zookeeper伺服器上的資料資源被其他程序意外操作修改,需要解決不同應用之間的許可權問題 即對zookeeper伺服器上的資料訪問進行...
Zookeeper 許可權控制 ACL介紹
zookeeper 的 acl access control list,訪問控制表 許可權在生產環境是特別重要的。acl 許可權可以針對節點設定相關讀寫等許可權,保障資料安全性。permissions 可以指定不同的許可權範圍及角色。acl 命令列 getacl 命令 獲取某個節點的 acl 許可權...