Interface PrincipalProvider

    • Method Detail

      • getPrincipal

        Principal getPrincipal​(String principalName)
        Returns the principal with the given name if is known to this provider
        Parameters:
        principalName - the name of the principal to retrieve
        Returns:
        return the requested principal or null
      • findPrincipals

        PrincipalIterator findPrincipals​(String simpleFilter)
        Searches for Principals that match the given String. NOTE: Groups are included in the search result.
        Parameters:
        simpleFilter -
        Returns:
        See Also:
        findPrincipals(String,int)
      • getGroupMembership

        PrincipalIterator getGroupMembership​(Principal principal)
        Returns an iterator over all group principals for which the given principal is either direct or indirect member of. If a principal is a direct member of a group, then GroupPrincipal.isMember(Principal) evaluates to true. A principal is an indirect member of a group if any of its groups (to any degree of separation) is direct member of the group.

        Example:
        If Principal is member of Group A, and Group A is member of Group B, this method will return Group A and Group B.

        Parameters:
        principal - the principal to return it's membership from.
        Returns:
        an iterator returning all groups the given principal is member of.
      • init

        void init​(Properties options)
        Initialize this provider.
        Parameters:
        options - the options that are set
      • close

        void close()
        This is called when a provider is not longer used by the repository. An implementation can then release any resources bound to this provider, eg. disconnect from a back end system.
      • canReadPrincipal

        boolean canReadPrincipal​(Session session,
                                 Principal principalToRead)
        Tests if the provided session is allowed to read the given principal. Since the principal providers do not restrict the access on the principals they provide, this method is used by the PrincipalManger to ensure proper access rights for the client requesting the principals.
        Parameters:
        session -
        principalToRead - The principal to be accessed by the specified subject.
        Returns:
        true if the session is allowed to read the principal; false otherwise.