[
https://issues.apache.org/jira/browse/SOLR-7890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14711049#comment-14711049
]
Jan Høydahl commented on SOLR-7890:
-----------------------------------
Thanks for your review Per! You bring valid points to the table.
bq. Maybe ZkZnodeProtection should be closer connected to
VMParamsAllAndReadonlyDigestZkACLProvider (e.g. inner class).
I intentionally put it as a standalone class with a public API, to have a
zkACLProvider-independent way of knowing if a znode should be protected or not,
see use in {{ZookeeperInfoServlet}}. The intention was that future and 3rd
party ACL Providers should update {{ZkZnodeProtection}}, but the concept of a
boolean protected/not-protected may be a false assumption for more complex,
fine-grained ACL providers, where it all depends on the logged in user. I'm
inclined to move the class as you propose.
{{ZookeeperInfoServlet}}'s usage is also temporarily. The day we get proper
login (SOLR-7896) in place, we can require the {{security-edit}} role in order
to show {{/security.json}} in the zk tree view.
bq. Therefore you need to think about if Solr behaves appropriate when
upgrading to a release including SOLR-7890.
True. If Solr somehow could detect if {{zkProtectedPaths}} have changed (in
existing installs it would be empty), then we could trigger a full walk-through
of the zk tree and update ACLs according to the new setting. Or perhaps good
enough is to add a {{-cmd refresh-acls}} command to {{zkcli.sh}} and document
it in CHANGES and refguide.
> By default require admin rights to access /security.json in ZK
> --------------------------------------------------------------
>
> Key: SOLR-7890
> URL: https://issues.apache.org/jira/browse/SOLR-7890
> Project: Solr
> Issue Type: Sub-task
> Components: security
> Reporter: Jan Høydahl
> Assignee: Jan Høydahl
> Fix For: Trunk
>
> Attachments: SOLR-7890.patch
>
>
> Perhaps {{VMParamsAllAndReadonlyDigestZkACLProvider}} should by default
> require admin access for read/write of {{/security.json}}, and other
> sensitive paths. Today this is left to the user to implement.
> Also, perhaps factor out the already-known sensitive paths into a separate
> class, so that various {{ACLProvider}} implementations can get a list of
> paths that should be admin-only, read-only etc from one central place. Then
> 3rd party impls pulling ZK creds from elsewhere will still do the right thing
> in the future if we introduce other sensitive Znodes...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]