【问题标题】:connect to Zookeeper via kazoo lib with credentials使用凭据通过 kazoo lib 连接到 Zookeeper
【发布时间】:2018-07-11 19:42:26
【问题描述】:

我正在尝试使用凭据保护我的动物园管理员。

到目前为止,我已经使用以下代码连接到 zookeeper:

zk = KazooClient(hosts=HOSTS)
zk.start()

现在,为了添加凭据,我使用 addauth digest username:password 命令添加了身份验证,并使用 setAcl /znode auth:username:password:crdwa 将 ACL 设置为 znode。

现在当我尝试通过 zkCli 连接到 zookeeper 服务器时,我得到了

kazoo.exceptions.NoAuthError

例外。

但是如何将身份验证凭据传递给KazooClient

我可以使用

创建 ACL 凭据
ACL = make_digest_acl("username", "password", all=True) 
CRED = make_digest_acl_credential("username", "password")

并添加default_aclauth_data 喜欢

zk = KazooClient(hosts=HOSTS, default_acl=ACL, auth_data=[CRED])

但我仍然无法通过 python 连接。

我应该如何通过 kazoo 客户端对 zookeeper 服务器进行身份验证?

谢谢

【问题讨论】:

    标签: python apache-zookeeper kazoo


    【解决方案1】:

    auth_data 应该作为摘要传递,例如:

    KazooClient(hosts=HOSTS, auth_data=[("digest", "user:pass")])

    【讨论】:

      猜你喜欢
      • 2015-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-10
      • 2014-04-11
      • 2015-12-22
      • 2015-01-19
      相关资源
      最近更新 更多