zookeeper之許可權控制 ACL

2021-08-27 09:05:42 字數 1339 閱讀 5517

1.許可權控制

zookeeper集群中,通常是由乙個統一的zookeeper集群來為若干個應用提供服務。而此時,各應用之間不存在資料的共享操作場景。因此為了避免zookeeper伺服器上的資料資源被其他程序意外操作修改,需要解決不同應用之間的許可權問題 。即對zookeeper伺服器上的資料訪問進行許可權控制(access control)。zookeeper支援並提供了該功能,即通過設定zookeeper伺服器上資料節點的acl,來達到客戶端對該zookeeper伺服器上對應資料節點的訪問許可權。這類似於「電腦開機密碼,只有知道該密碼的人才能對該電腦進行操作」。

2.許可權控制模式

zookeeper提供了多種許可權控制模式(scheme),分別是:world、auth、digest、ip、super。如下表:

引數名說明控制模式分類

scheme

許可權控制模式

world、 auth、 digest、 ip、super

(1)結構體定義

struct id ;

struct acl ;

struct acl_vector ;

(2)與acl ids相關聯的常量

///

//////

//////

//////

////// 與acl ids相關的常量 ///

//////

//////

//////

///////

struct id zoo_anyone_id_unsafe = ;

struct id zoo_auth_ids = ;

(3)zookeeper中三個標準的acl

static

struct acl _open_acl_unsafe_acl = }};

static

struct acl _read_acl_unsafe_acl = }};

static

struct acl _creator_all_acl_acl = }};

//////

//////

//////

//////// zookeeper中三個標準的acl ///

//////

//////

////////

struct acl_vector zoo_open_acl_unsafe = ;

struct acl_vector zoo_read_acl_unsafe = ;

struct acl_vector zoo_creator_all_acl = ;

to do…..

ZooKeeper許可權控制

目前在公司內部使用zookeeper的地方越來越多,應用大多喜歡自己部署一套zk集群來使用。考慮到zk的高可用,並且一套zk集群至少3臺機器,那麼每個應用,尤其是一些非核心應用都自己去部署一套的話,對資源利用率很低。另外,隨著zk容災的提出,單套zk集群使用的機器量會更大,運維人員開始 對這個情況擔...

Zookeeper 許可權控制

1.acl access control lists 針對節點設定相關讀寫等許可權,目的為了保障資料的安全性。許可權permissions可以指定不同的許可權範圍以及角色。2.acl命令列 getacl 獲取某個節點的acl許可權資訊。setacl 設定某個節點的acl許可權資訊。addauth 輸...

Zookeeper 許可權控制 ACL介紹

zookeeper 的 acl access control list,訪問控制表 許可權在生產環境是特別重要的。acl 許可權可以針對節點設定相關讀寫等許可權,保障資料安全性。permissions 可以指定不同的許可權範圍及角色。acl 命令列 getacl 命令 獲取某個節點的 acl 許可權...