Class AuthorizationManagerImpl
- java.lang.Object
-
- io.vertigo.account.impl.authorization.AuthorizationManagerImpl
-
- All Implemented Interfaces:
AuthorizationManager
,io.vertigo.core.node.component.Component
,io.vertigo.core.node.component.CoreComponent
,io.vertigo.core.node.component.Manager
public final class AuthorizationManagerImpl extends Object implements AuthorizationManager
Main authorizations manager implementation.- Author:
- npiedeloup
-
-
Constructor Summary
Constructors Constructor Description AuthorizationManagerImpl(VSecurityManager securityManager)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SecuredEntity
findSecuredEntity(io.vertigo.datamodel.structure.definitions.DtDefinition dtDefinition)
Finds the SecuredEntity from a type of 'dtDefinition'<E extends io.vertigo.datamodel.structure.model.Entity>
Set<String>getAuthorizedOperations(E entity)
Get all operation doable on this object by current user.<E extends io.vertigo.datamodel.structure.model.Entity>
io.vertigo.datamodel.criteria.Criteria<E>getCriteriaSecurity(Class<E> entityClass, OperationName<E> operation)
Return Criteria of security rules for this current user on this entityClass.Set<String>
getPriorAuthorizations()
Get all prior authorizations of current user.<E extends io.vertigo.datamodel.structure.model.Entity>
StringgetSearchSecurity(Class<E> entityClass, OperationName<E> operationName)
Return Search query filter of security rules for this current user on this dtObjectClass.boolean
hasAuthorization(AuthorizationName... permissionNames)
Check on authorizations.<E extends io.vertigo.datamodel.structure.model.Entity>
booleanisAuthorized(E entity, OperationName<E> operationName)
Check if current user can do this operation on this entity.UserAuthorizations
obtainUserAuthorizations()
User authorization accessor to test or add authorizations.
-
-
-
Constructor Detail
-
AuthorizationManagerImpl
@Inject public AuthorizationManagerImpl(VSecurityManager securityManager)
Constructor.- Parameters:
securityManager
- Security manager
-
-
Method Detail
-
obtainUserAuthorizations
public UserAuthorizations obtainUserAuthorizations()
User authorization accessor to test or add authorizations. A UserSession must exists.- Specified by:
obtainUserAuthorizations
in interfaceAuthorizationManager
- Returns:
- UserAuthorizations
-
hasAuthorization
public boolean hasAuthorization(AuthorizationName... permissionNames)
Check on authorizations. Say if current user has this authorization.- Specified by:
hasAuthorization
in interfaceAuthorizationManager
- Parameters:
permissionNames
- authorization. (not null)- Returns:
- if user has this authorization.
-
isAuthorized
public <E extends io.vertigo.datamodel.structure.model.Entity> boolean isAuthorized(E entity, OperationName<E> operationName)
Check if current user can do this operation on this entity.- Specified by:
isAuthorized
in interfaceAuthorizationManager
- Type Parameters:
E
- entity type- Parameters:
entity
- secured data to checkoperationName
- operation name- Returns:
- true if current user can do this operation on this entity.
-
getCriteriaSecurity
public <E extends io.vertigo.datamodel.structure.model.Entity> io.vertigo.datamodel.criteria.Criteria<E> getCriteriaSecurity(Class<E> entityClass, OperationName<E> operation)
Return Criteria of security rules for this current user on this entityClass.- Specified by:
getCriteriaSecurity
in interfaceAuthorizationManager
- Type Parameters:
E
- entity type- Parameters:
entityClass
- secured data to checkoperation
- operation name- Returns:
- Criteria of security rule for this current user on this entity
-
getSearchSecurity
public <E extends io.vertigo.datamodel.structure.model.Entity> String getSearchSecurity(Class<E> entityClass, OperationName<E> operationName)
Return Search query filter of security rules for this current user on this dtObjectClass.- Specified by:
getSearchSecurity
in interfaceAuthorizationManager
- Parameters:
entityClass
- secured data to checkoperationName
- operation name- Returns:
- Search query filter of security rules for this current user on this entity.
-
getPriorAuthorizations
public Set<String> getPriorAuthorizations()
Description copied from interface:AuthorizationManager
Get all prior authorizations of current user. This can be use by UI to show or not some features.- Specified by:
getPriorAuthorizations
in interfaceAuthorizationManager
- Returns:
- authorizations set
-
getAuthorizedOperations
public <E extends io.vertigo.datamodel.structure.model.Entity> Set<String> getAuthorizedOperations(E entity)
Get all operation doable on this object by current user. This can be use by UI to show or not some features.- Specified by:
getAuthorizedOperations
in interfaceAuthorizationManager
- Type Parameters:
E
- entity type- Parameters:
entity
- secured data to check- Returns:
- operations list
-
findSecuredEntity
public static SecuredEntity findSecuredEntity(io.vertigo.datamodel.structure.definitions.DtDefinition dtDefinition)
Finds the SecuredEntity from a type of 'dtDefinition'- Parameters:
dtDefinition
- the 'dtDefinition'- Returns:
- SecuredEntity
-
-