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

angela updated JCRVLT-100:
--------------------------
    Description: 
Based on the JCRLT-99 i searched the code base for additional places where 
access to the root node is required.

[~tripod], in the attached {{filevault_root_access.txt}} you can find the 
complete result for searching the jcrvlt code base for {{getRootNode}}. some 
seemed to be valid shortcuts (marked with _(excluded)_) but i suspect that 
others might require some attention.

if using the functionality provided with a non-admin session, access to the 
root node is likely to not be granted thus rendering the filevault unusable (or 
risking privilege escalations by being forced to grant a non-privileged session 
full access up to the root node).

i will create individual subtasks for the various parts that IMHO need to be 
fixed.



  was:
When creating a package using PackageManagerImpl.assemble() the package manager 
session used always requires read access to the root node, due to the call to 
Session.getRootNode(). 

{code}
Caused by: javax.jcr.AccessDeniedException: Root node is not accessible.
        at 
org.apache.jackrabbit.oak.jcr.session.SessionImpl$4.perform(SessionImpl.java:304)
        at 
org.apache.jackrabbit.oak.jcr.session.SessionImpl$4.perform(SessionImpl.java:298)
        at 
org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:209)
        at 
org.apache.jackrabbit.oak.jcr.session.SessionImpl.getRootNode(SessionImpl.java:298)
        at 
org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.getPackageRoot(JcrPackageManagerImpl.java:637)
        at 
org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.listPackages(JcrPackageManagerImpl.java:683)
        at 
org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.validateSubPackages(JcrPackageManagerImpl.java:490)
        at 
org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.assemble(JcrPackageManagerImpl.java:458)
        at 
org.apache.jackrabbit.vault.packaging.impl.JcrPackageManagerImpl.assemble(JcrPackageManagerImpl.java:447)

{code}

I'm using version 3.1.20 (as reported by felix console), but somehow this 
version is not available in the Jira "Affects Version/s" field. 




> FileVault requires read access to root node
> -------------------------------------------
>
>                 Key: JCRVLT-100
>                 URL: https://issues.apache.org/jira/browse/JCRVLT-100
>             Project: Jackrabbit FileVault
>          Issue Type: Bug
>          Components: Packaging
>            Reporter: angela
>         Attachments: JCRVLT-99_DefaultWorkspaceFilter.patch, 
> JCRVLT-99_DocViewSAXImporter_JcrSysViewTransformer.patch, 
> JCRVLT-99_Importer.patch, JCRVLT-99_JcrPackageDefinitionImpl.patch, 
> JCRVLT-99_JcrPackageManagerImpl.patch, filevault_root_access.txt
>
>
> Based on the JCRLT-99 i searched the code base for additional places where 
> access to the root node is required.
> [~tripod], in the attached {{filevault_root_access.txt}} you can find the 
> complete result for searching the jcrvlt code base for {{getRootNode}}. some 
> seemed to be valid shortcuts (marked with _(excluded)_) but i suspect that 
> others might require some attention.
> if using the functionality provided with a non-admin session, access to the 
> root node is likely to not be granted thus rendering the filevault unusable 
> (or risking privilege escalations by being forced to grant a non-privileged 
> session full access up to the root node).
> i will create individual subtasks for the various parts that IMHO need to be 
> fixed.



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

Reply via email to