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 Detail

      • 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.structure.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.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.
        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.structure.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:
        O - 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.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.
        Type Parameters:
        E - entity type
        Parameters:
        entity - secured data to check
        Returns:
        operations list