Interface AuthorizationManager

All Superinterfaces:
io.vertigo.core.node.component.Component, io.vertigo.core.node.component.CoreComponent, io.vertigo.core.node.component.Manager
All Known Implementing Classes:
AuthorizationManagerImpl

public interface AuthorizationManager extends io.vertigo.core.node.component.Manager
Authorizations manager. There is two type of authorisations : - general, no-conditions authoriations : used for main features of application (menu, admin, ...) - context dependents authorisations : used for operation on secured data
Author:
npiedeloup
  • Method Details

    • obtainUserAuthorizations

      UserAuthorizations obtainUserAuthorizations()
      User authorization accessor to test or add authorizations. A UserSession must exists.
      Returns:
      UserAuthorizations
    • hasAuthorization

      boolean hasAuthorization(AuthorizationName... authorizationName)
      Check on authorizations. Say if current user has this authorization.
      Parameters:
      authorizationName - authorization. (not null)
      Returns:
      if user has this authorization.
    • isAuthorized

      <E extends io.vertigo.datamodel.data.model.Entity> boolean isAuthorized(E entity, OperationName<E> operation)
      Check if current user can do this operation on this entity.
      Type Parameters:
      E - entity type
      Parameters:
      entity - secured data to check
      operation - operation name
      Returns:
      true if current user can do this operation on this entity.
    • getCriteriaSecurity

      <E extends io.vertigo.datamodel.data.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.
      Type Parameters:
      E - entity type
      Parameters:
      entityClass - secured data to check
      operation - operation name
      Returns:
      Criteria of security rule for this current user on this entity
    • getSearchSecurity

      <E extends io.vertigo.datamodel.data.model.Entity> String getSearchSecurity(Class<E> entityClass, OperationName<E> operation)
      Return Search query filter of security rules for this current user on this dtObjectClass.
      Type Parameters:
      E - entity type
      Parameters:
      entityClass - secured data to check
      operation - operation name
      Returns:
      Search query filter of security rules for this current user on this entity.
    • getPriorAuthorizations

      Set<String> getPriorAuthorizations()
      Get all prior authorizations of current user. This can be use by UI to show or not some features.
      Returns:
      authorizations set
    • getAuthorizedOperations

      <E extends io.vertigo.datamodel.data.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.
      Type Parameters:
      E - entity type
      Parameters:
      entity - secured data to check
      Returns:
      operations list