You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Tommaso Teofili (JIRA)" <ji...@apache.org> on 2015/02/11 10:58:12 UTC

[jira] [Updated] (OAK-2490) Make it possible to use the PermissionProvider from within query indexes

     [ https://issues.apache.org/jira/browse/OAK-2490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tommaso Teofili updated OAK-2490:
---------------------------------
    Attachment: OAK-2490.0.patch

attached a first patch which passes the {{PermissionProvider}} from the {{Root}} down to the {{ExecutionContext}} which pass it to the {{QueryImpl}} which pass it to the {{Filter}} which can use it in {{Filter#isAccessible(path)}}.
I'm not sure this is the best approach because this passing the PP down to different objects seems not so nice, also (but I'm not sure here if it's a problem and if so how we could fix it) only {{MutableRoot}} has an associated {{PermissionProvide}} while the {{ImmutableRoot}} doesn't have it and therefore if the PP is passed by it the {{Filter#isAccessible(path)}} will always fail (as the PP is null).
Since OAK-2423 patch is not yet committed I'm using {{PermissionProvider#isGranited(path,action)}} with {{Session.ACTION_READ}} in the new method.

Looking forward to your feedback [~chetanm], [~anchela]


> Make it possible to use the PermissionProvider from within query indexes
> ------------------------------------------------------------------------
>
>                 Key: OAK-2490
>                 URL: https://issues.apache.org/jira/browse/OAK-2490
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Tommaso Teofili
>            Assignee: Tommaso Teofili
>             Fix For: 1.1.7
>
>         Attachments: OAK-2490.0.patch
>
>
> As discussed on OAK-2423 and OAK-2473 it's useful to have a {{PermissionProvider}} down into {{QueryIndex}} implementations and/or {{SelectorImpl}}, depending on wether the ACL checks have to be done on an implementation base or generally.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)