Interface IAuthenticationHandler

    • Method Detail

      • getAuthenticator

        IAuthenticator<?> getAuthenticator​(UserContext uc,
                                           UUID callbackUuid)
        Returns the authenticator with the given callback UUID.
        Parameters:
        uc - User context for accessing the database.
        callbackUuid - Callback UUI of the authenticator
        Returns:
        authenticator with the given callback UUID.
        Since:
        7.2.0
      • getActiveClientDescriptor

        IClientDescriptor getActiveClientDescriptor​(UserContext uc,
                                                    String clientName)
        Returns the client descriptor for the given client name. The client needs to be active.
        Parameters:
        uc - user context for accessing the database.
        clientName - name of the client.
        Returns:
        the client descriptor for the given client name iff it is active and null otherwise.
        Since:
        8.0.0
      • getActiveClientDescriptors

        Map<String,​IClientDescriptor> getActiveClientDescriptors​(UserContext uc,
                                                                       Set<String> clientNames)
        Returns the client descriptors for the given client names. The clients need to be active.
        Parameters:
        uc - user context for accessing the database.
        clientNames - names of the clients.
        Returns:
        the client descriptors for the given client names iff they are active as a map. The keys of the map entries are the client names.
        Since:
        8.0.0
      • getBackendClientDescriptors

        List<IClientDescriptor> getBackendClientDescriptors​(UserContext uc)
        Finds all active client descriptors that are configured for the backend in order. Clients with credentials authenticators are at the beginning of the list.
        Parameters:
        uc - user context for accessing the database.
        Returns:
        ordered list of all active client descriptors configured for the backend.
        Since:
        8.0.0
      • getBackendInputClientDescriptors

        List<IClientDescriptor> getBackendInputClientDescriptors​(UserContext uc)
        Finds all active client descriptors that are configured for the backend and that require direct input of credentials in order.
        Parameters:
        uc - user context for accessing the database.
        Returns:
        ordered list of all active client descriptors configured for the backend and require direct input of credentials.
        Since:
        8.0.0
      • getBackendRedirectClientDescriptors

        List<IClientDescriptor> getBackendRedirectClientDescriptors​(UserContext uc)
        Finds all active client descriptors that are configured for the backend and redirect the user to an external IDP (in order).
        Parameters:
        uc - user context for accessing the database.
        Returns:
        ordered list of all active client descriptors configured for the backend and redirect the user to an external IDP.
        Since:
        8.0.0
      • getClientDescriptor

        @Nullable
        IClientDescriptor getClientDescriptor​(UserContext uc,
                                              String clientName)
        Returns the client for the given client name.
        Parameters:
        uc - user context for accessing the database.
        clientName - name of the client (callback UUID or authentication client type nam).
        Returns:
        the pac4j client for the given client name or null if none could be found.
        Since:
        8.0.0
      • getUserProfileByCredentials

        org.pac4j.core.profile.UserProfile getUserProfileByCredentials​(UserContext uc,
                                                                       UUID callbackUuid,
                                                                       String userName,
                                                                       String password)
        Gets the user profile for the given authenticator. Only allowed for LDAP authenticators at the moment.
        Parameters:
        uc - User context for accessing the database.
        callbackUuid - Callback UUID of the authenticator
        userName - Name of the user
        password - Password of the user
        Returns:
        the pac4j UserProfile of the user if the user was successfully validated.
        Since:
        8.0.0