[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14107837#comment-14107837
 ] 

Alexander Shraer commented on ZOOKEEPER-2014:
---------------------------------------------

Everything you guys are saying about admin-only controls sounds very 
reasonable. I just want to clarify about the special reconfig znode. IMHO we 
should not allow write permissions to this node. I don't even see why an admin 
should have it :) its set only through the reconfig API. 

I do think that all clients should have read permissions, and here's why - the 
information they get from this znode is the up-to-date connection string. When 
the configuration changes this is the bare minimum they need in order not to 
loose track of the system. When their server crashes they need to know whom to 
connect to next. The new connection string is exactly the information we 
exploit for rebalancing. It is even implemented inside the updateServerList 
method, which is also needed in any case. 

Regarding my suggestion - Hongchao opened a JIRA for it and you can read the 
discussion there https://issues.apache.org/jira/browse/ZOOKEEPER-2016
Please especially see Marshall's comment.
All I'm proposing there is to implement some default behaviour that will save 
most clients from setting a watch and invoking updateServerList - I suggest 
that the client-side-library does it for them if they opt-in for the default 
behaviour. It doesn't change APIs, just adds one more feature, so it doesn't 
delay 3.5.0.







> Only admin should be allowed to reconfig a cluster
> --------------------------------------------------
>
>                 Key: ZOOKEEPER-2014
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2014
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.5.0
>            Reporter: Raul Gutierrez Segales
>            Assignee: Raul Gutierrez Segales
>            Priority: Blocker
>         Attachments: ZOOKEEPER-2014.patch
>
>
> ZOOKEEPER-107 introduces reconfiguration support via the reconfig() call. We 
> should, at the very least, ensure that only the Admin can reconfigure a 
> cluster. Perhaps restricting access to /zookeeper/config as well, though this 
> is debatable. Surely one could ensure Admin only access via an ACL, but that 
> would leave everyone who doesn't use ACLs unprotected. We could also force a 
> default ACL to make it a bit more consistent (maybe).
> Finally, making reconfig() only available to Admins means they have to run 
> with zookeeper.DigestAuthenticationProvider.superDigest (which I am not sure 
> if everyone does, or how would it work with other authentication providers). 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to