public abstract class AbstractAccessControlManager extends Object implements JackrabbitAccessControlManager
AbstractAccessControlManager
...Constructor and Description |
---|
AbstractAccessControlManager() |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
checkInitialized()
Check if this manager has been properly initialized.
|
protected abstract void |
checkPermission(String absPath,
int permission)
Check if the specified privileges are granted at
absPath . |
protected abstract void |
checkValidNodePath(String absPath)
Tests if the given
absPath is absolute and points to an existing node. |
JackrabbitAccessControlPolicy[] |
getApplicablePolicies(Principal principal)
Returns the applicable policies for the specified
principal
or an empty array if no additional policies can be applied. |
javax.jcr.security.AccessControlPolicyIterator |
getApplicablePolicies(String absPath)
Returns an empty iterator.
|
JackrabbitAccessControlPolicy[] |
getPolicies(Principal principal)
Returns the
AccessControlPolicy objects that have been set
for the given principal or an empty array if no policy has
been set. |
javax.jcr.security.AccessControlPolicy[] |
getPolicies(String absPath)
Returns
null . |
protected abstract PrivilegeManager |
getPrivilegeManager() |
javax.jcr.security.Privilege[] |
getSupportedPrivileges(String absPath)
Always returns all registered
Privilege s. |
javax.jcr.security.Privilege |
privilegeFromName(String privilegeName) |
void |
removePolicy(String absPath,
javax.jcr.security.AccessControlPolicy policy)
Always throws
AccessControlException |
void |
setPolicy(String absPath,
javax.jcr.security.AccessControlPolicy policy)
Always throws
AccessControlException |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getEffectivePolicies, getPrivileges, hasPrivileges
public javax.jcr.security.Privilege[] getSupportedPrivileges(String absPath) throws javax.jcr.PathNotFoundException, javax.jcr.RepositoryException
Privilege
s.getSupportedPrivileges
in interface javax.jcr.security.AccessControlManager
absPath
- Path to an existing node.Privilege
s.javax.jcr.PathNotFoundException
javax.jcr.RepositoryException
AccessControlManager.getSupportedPrivileges(String)
public javax.jcr.security.Privilege privilegeFromName(String privilegeName) throws javax.jcr.security.AccessControlException, javax.jcr.RepositoryException
privilegeFromName
in interface javax.jcr.security.AccessControlManager
javax.jcr.security.AccessControlException
javax.jcr.RepositoryException
AccessControlManager.privilegeFromName(String)
public javax.jcr.security.AccessControlPolicy[] getPolicies(String absPath) throws javax.jcr.PathNotFoundException, javax.jcr.AccessDeniedException, javax.jcr.RepositoryException
null
.getPolicies
in interface javax.jcr.security.AccessControlManager
absPath
- Path to an existing node.null
.javax.jcr.PathNotFoundException
javax.jcr.AccessDeniedException
javax.jcr.RepositoryException
AccessControlManager.getApplicablePolicies(String)
public javax.jcr.security.AccessControlPolicyIterator getApplicablePolicies(String absPath) throws javax.jcr.PathNotFoundException, javax.jcr.AccessDeniedException, javax.jcr.RepositoryException
getApplicablePolicies
in interface javax.jcr.security.AccessControlManager
absPath
- Path to an existing node.javax.jcr.PathNotFoundException
javax.jcr.AccessDeniedException
javax.jcr.RepositoryException
AccessControlManager.getApplicablePolicies(String)
public void setPolicy(String absPath, javax.jcr.security.AccessControlPolicy policy) throws javax.jcr.PathNotFoundException, javax.jcr.security.AccessControlException, javax.jcr.AccessDeniedException, javax.jcr.RepositoryException
AccessControlException
setPolicy
in interface javax.jcr.security.AccessControlManager
javax.jcr.PathNotFoundException
javax.jcr.security.AccessControlException
javax.jcr.AccessDeniedException
javax.jcr.RepositoryException
AccessControlManager.setPolicy(String, AccessControlPolicy)
public void removePolicy(String absPath, javax.jcr.security.AccessControlPolicy policy) throws javax.jcr.PathNotFoundException, javax.jcr.security.AccessControlException, javax.jcr.AccessDeniedException, javax.jcr.RepositoryException
AccessControlException
removePolicy
in interface javax.jcr.security.AccessControlManager
javax.jcr.PathNotFoundException
javax.jcr.security.AccessControlException
javax.jcr.AccessDeniedException
javax.jcr.RepositoryException
AccessControlManager.removePolicy(String, AccessControlPolicy)
public JackrabbitAccessControlPolicy[] getApplicablePolicies(Principal principal) throws javax.jcr.AccessDeniedException, javax.jcr.security.AccessControlException, javax.jcr.UnsupportedRepositoryOperationException, javax.jcr.RepositoryException
JackrabbitAccessControlManager
principal
or an empty array if no additional policies can be applied.getApplicablePolicies
in interface JackrabbitAccessControlManager
principal
- A principal known to the editing session.principal
. Note
that the policy object returned must reveal the path of the node where
they can be applied later on using AccessControlManager.setPolicy(String, javax.jcr.security.AccessControlPolicy)
.javax.jcr.AccessDeniedException
- if the session lacks
MODIFY_ACCESS_CONTROL
privilege.javax.jcr.security.AccessControlException
- if the specified principal does not exist
or if another access control related exception occurs.javax.jcr.UnsupportedRepositoryOperationException
- if editing access control
policies by principal is not supported.javax.jcr.RepositoryException
- if another error occurs.JackrabbitAccessControlManager.getApplicablePolicies(java.security.Principal)
public JackrabbitAccessControlPolicy[] getPolicies(Principal principal) throws javax.jcr.AccessDeniedException, javax.jcr.security.AccessControlException, javax.jcr.UnsupportedRepositoryOperationException, javax.jcr.RepositoryException
JackrabbitAccessControlManager
AccessControlPolicy
objects that have been set
for the given principal
or an empty array if no policy has
been set. This method reflects the binding state, including transient
policy modifications.getPolicies
in interface JackrabbitAccessControlManager
principal
- A valid principal.javax.jcr.AccessDeniedException
- if the session lacks
READ_ACCESS_CONTROL
privilege.javax.jcr.security.AccessControlException
- if the specified principal does not exist
or if another access control related exception occurs.javax.jcr.UnsupportedRepositoryOperationException
- if editing access control
policies by principal is not supported.javax.jcr.RepositoryException
- If another error occurs.JackrabbitAccessControlManager.getPolicies(java.security.Principal)
protected abstract void checkInitialized() throws IllegalStateException
IllegalStateException
- If this manager has not been properly initialized.protected abstract void checkPermission(String absPath, int permission) throws javax.jcr.AccessDeniedException, javax.jcr.PathNotFoundException, javax.jcr.RepositoryException
absPath
.absPath
- Path to an existing node.permission
- Permissions to be checked.javax.jcr.AccessDeniedException
- if the session does not have the
specified privileges.javax.jcr.PathNotFoundException
- if no node exists at absPath
of if the session does not have the permission to READ it.javax.jcr.RepositoryException
- If another error occurs.protected abstract PrivilegeManager getPrivilegeManager() throws javax.jcr.RepositoryException
javax.jcr.RepositoryException
- If another error occurs.protected abstract void checkValidNodePath(String absPath) throws javax.jcr.PathNotFoundException, javax.jcr.RepositoryException
absPath
is absolute and points to an existing node.absPath
- Path to an existing node.javax.jcr.PathNotFoundException
- if no node at absPath
exists
or the session does not have privilege to retrieve the node.javax.jcr.RepositoryException
- If the given absPath
is not
absolute or if some other error occurs.Copyright © 2004-2020 The Apache Software Foundation. All Rights Reserved.