Package org.nuxeo.ecm.core.security
Class SecurityService
- java.lang.Object
-
- org.nuxeo.runtime.model.DefaultComponent
-
- org.nuxeo.ecm.core.security.SecurityService
-
- All Implemented Interfaces:
Adaptable,Component,Extensible,TimestampedService
public class SecurityService extends DefaultComponent
- Author:
- Bogdan Stefanescu, Olivier Grisel, Anahide Tchertchian
-
-
Field Summary
Fields Modifier and Type Field Description static ComponentNameNAMEstatic StringPERMISSIONS_EXTENSION_POINT-
Fields inherited from class org.nuxeo.runtime.model.DefaultComponent
lastModified, name
-
-
Constructor Summary
Constructors Constructor Description SecurityService()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivate(ComponentContext context)Activates the component.booleanarePoliciesExpressibleInQuery(String repositoryName)booleanarePoliciesRestrictingPermission(String permission)booleancheckPermission(Document doc, NuxeoPrincipal principal, String permission)voiddeactivate(ComponentContext context)Deactivates the component.Collection<String>filterGrantedPermissions(Document doc, NuxeoPrincipal principal, Collection<String> permissions)Filters the supplied permissions based on whether they are granted to a given principal for a given document.<T> TgetAdapter(Class<T> adapter)Returns an object which is an instance of the given class associated with this object.PermissionProvidergetPermissionProvider()String[]getPermissionsToCheck(String permission)Provides the full list of all permissions or groups of permissions that contain the given one (inclusive).Collection<SQLQuery.Transformer>getPoliciesQueryTransformers(String repositoryName)static String[]getPrincipalsToCheck(NuxeoPrincipal principal)voidregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor)voidunregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor)-
Methods inherited from class org.nuxeo.runtime.model.DefaultComponent
addRuntimeMessage, addRuntimeMessage, getDescriptor, getDescriptors, getLastModified, getRegistry, register, registerExtension, setLastModified, setModifiedNow, setName, start, stop, unregister, unregisterExtension
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.nuxeo.runtime.model.Component
applicationStarted, getApplicationStartedOrder
-
-
-
-
Field Detail
-
NAME
public static final ComponentName NAME
-
PERMISSIONS_EXTENSION_POINT
public static final String PERMISSIONS_EXTENSION_POINT
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SecurityService
public SecurityService()
-
-
Method Detail
-
activate
public void activate(ComponentContext context)
Description copied from interface:ComponentActivates the component.This method is called by the runtime when a component is activated.
- Specified by:
activatein interfaceComponent- Overrides:
activatein classDefaultComponent- Parameters:
context- the runtime context
-
deactivate
public void deactivate(ComponentContext context)
Description copied from interface:ComponentDeactivates the component.This method is called by the runtime when a component is deactivated.
- Specified by:
deactivatein interfaceComponent- Overrides:
deactivatein classDefaultComponent- Parameters:
context- the runtime context
-
registerContribution
public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor)
- Overrides:
registerContributionin classDefaultComponent
-
unregisterContribution
public void unregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor)
- Overrides:
unregisterContributionin classDefaultComponent
-
getPermissionProvider
public PermissionProvider getPermissionProvider()
-
arePoliciesRestrictingPermission
public boolean arePoliciesRestrictingPermission(String permission)
-
arePoliciesExpressibleInQuery
public boolean arePoliciesExpressibleInQuery(String repositoryName)
-
getPoliciesQueryTransformers
public Collection<SQLQuery.Transformer> getPoliciesQueryTransformers(String repositoryName)
-
checkPermission
public boolean checkPermission(Document doc, NuxeoPrincipal principal, String permission)
-
filterGrantedPermissions
public Collection<String> filterGrantedPermissions(Document doc, NuxeoPrincipal principal, Collection<String> permissions)
Filters the supplied permissions based on whether they are granted to a given principal for a given document.- Since:
- 9.1
-
getPermissionsToCheck
public String[] getPermissionsToCheck(String permission)
Provides the full list of all permissions or groups of permissions that contain the given one (inclusive).It is exposed remotely through
CoreSession.getPermissionsToCheck(java.lang.String).- Returns:
- the list, as an array of strings.
-
getPrincipalsToCheck
public static String[] getPrincipalsToCheck(NuxeoPrincipal principal)
-
getAdapter
public <T> T getAdapter(Class<T> adapter)
Description copied from interface:AdaptableReturns an object which is an instance of the given class associated with this object. Returnsnullif no such object can be found.- Specified by:
getAdapterin interfaceAdaptable- Overrides:
getAdapterin classDefaultComponent- Parameters:
adapter- the adapter class to look up- Returns:
- a object castable to the given class, or
nullif this object does not have an adapter for the given class
-
-