It looks like this is a limitation of Curator. Multiple auth support would need 
to be added. Please open an issue in the Curator Jira.

For now, you’ll need to get the underlying ZooKeeper instance directly and add 
it:

        curator.getZookeeperClient().getZooKeeper().addAuth(…)

Note, however, that if there is a connection problem Curator will allocate a 
new ZooKeeper instance and you’d have to add the auth to that as well.

-Jordan


From: Karthik Kambatla [email protected]
Reply: [email protected] [email protected]
Date: May 30, 2014 at 12:07:23 PM
To: [email protected] [email protected]
Subject:  CuratorFramework: multiple auths  

Hi 

I am very new to Curator, but have used ZK before. Firstly, let me thank you 
for putting Curator together - it makes talking to Zookeeper very easy. 

I have one of those noob questions and will greatly appreciate any help.

For my usecase, I need multiple auths - multiple schemes - for my connection. 
In the vanilla ZK world, I would call Zookeeper#addAuthInfo for each of my 
schemes. How do I achieve the same using Curator?

CuratorFrameworkFactory.Builder#authorization seems to allow adding a single 
auth. I googled around but couldn't find much information. I was considering 
calling CuratorFramework#getZookeeperClient#getZookeeper()#addAuthInfo, but 
wasn't sure if these auths would be preserved across disconnects/ session 
timeouts. 

Is there a way to either add multiple auths or get notified if the underlying 
client changes?

Thanks again for all your help,

Karthik

Reply via email to