Interface IAuthenticationHandler

All Superinterfaces:
IAPIHandler, Serializable
All Known Implementing Classes:
AuthenticationHandler

public interface IAuthenticationHandler extends IAPIHandler
Author:
XIMA MEDIA GmbH
  • Method Details

    • loadAuthRequestData

      AuthenticationData loadAuthRequestData(UserContext uc, AuthenticationDataRequest request)
      Reads the data required for authenticating a form request, including the form, the client, and the authenticator configurations.
      Parameters:
      uc - User context for accessing the database.
      request - Data with the client, form, and form record.
      Returns:
      The loaded data.
    • 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