Package de.xima.fc.handler.system
Class AuthenticationHandler
- java.lang.Object
-
- de.xima.fc.handler.AMSApiHandler
-
- de.xima.fc.handler.system.AuthenticationHandler
-
- All Implemented Interfaces:
IAPIHandler,IAuthenticationHandler,Serializable
public class AuthenticationHandler extends AMSApiHandler implements IAuthenticationHandler
- Author:
- XIMA MEDIA GmbH
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description AuthenticationHandler()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IClientDescriptorgetActiveClientDescriptor(UserContext uc, String clientName)Returns the client descriptor for the given client name.Map<String,IClientDescriptor>getActiveClientDescriptors(UserContext uc, Set<String> clientNames)Returns the client descriptors for the given client names.IAuthenticator<?>getAuthenticator(UserContext uc, UUID callbackUuid)Returns the authenticator with the given callback UUID.List<IClientDescriptor>getBackendClientDescriptors(UserContext uc)Finds all active client descriptors that are configured for the backend in order.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.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).static IClientDescriptorgetClient(IEntityContext ec, String clientName)Returns theclientfor the given client name.IClientDescriptorgetClientDescriptor(UserContext uc, String clientName)Returns theclientfor the given client name.org.pac4j.core.profile.UserProfilegetUserProfileByCredentials(UserContext uc, UUID callbackUuid, String userName, String password)Gets the user profile for the given authenticator.AuthenticationDataloadAuthRequestData(UserContext uc, AuthenticationDataRequest request)Reads the data required for authenticating a form request, including theform, theclient, and theauthenticator configurations.-
Methods inherited from class de.xima.fc.handler.AMSApiHandler
getName
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.xima.fc.com.interfaces.IAPIHandler
getName
-
-
-
-
Method Detail
-
loadAuthRequestData
public AuthenticationData loadAuthRequestData(UserContext uc, AuthenticationDataRequest request)
Description copied from interface:IAuthenticationHandlerReads the data required for authenticating a form request, including theform, theclient, and theauthenticator configurations.- Specified by:
loadAuthRequestDatain interfaceIAuthenticationHandler- Parameters:
uc- User context for accessing the database.request- Data with theclient,form, andform record.- Returns:
- The loaded data.
-
getAuthenticator
public IAuthenticator<?> getAuthenticator(UserContext uc, UUID callbackUuid)
Description copied from interface:IAuthenticationHandlerReturns the authenticator with the given callback UUID.- Specified by:
getAuthenticatorin interfaceIAuthenticationHandler- Parameters:
uc- User context for accessing the database.callbackUuid- Callback UUI of the authenticator- Returns:
- authenticator with the given callback UUID.
-
getActiveClientDescriptor
public IClientDescriptor getActiveClientDescriptor(UserContext uc, String clientName)
Description copied from interface:IAuthenticationHandlerReturns the client descriptor for the given client name. The client needs to be active.- Specified by:
getActiveClientDescriptorin interfaceIAuthenticationHandler- 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
nullotherwise.
-
getActiveClientDescriptors
public Map<String,IClientDescriptor> getActiveClientDescriptors(UserContext uc, Set<String> clientNames)
Description copied from interface:IAuthenticationHandlerReturns the client descriptors for the given client names. The clients need to be active.- Specified by:
getActiveClientDescriptorsin interfaceIAuthenticationHandler- 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.
-
getBackendClientDescriptors
public List<IClientDescriptor> getBackendClientDescriptors(UserContext uc)
Description copied from interface:IAuthenticationHandlerFinds all active client descriptors that are configured for the backend in order. Clients with credentials authenticators are at the beginning of the list.- Specified by:
getBackendClientDescriptorsin interfaceIAuthenticationHandler- Parameters:
uc- user context for accessing the database.- Returns:
- ordered list of all active client descriptors configured for the backend.
-
getBackendInputClientDescriptors
public List<IClientDescriptor> getBackendInputClientDescriptors(UserContext uc)
Description copied from interface:IAuthenticationHandlerFinds all active client descriptors that are configured for the backend and that require direct input of credentials in order.- Specified by:
getBackendInputClientDescriptorsin interfaceIAuthenticationHandler- 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.
-
getBackendRedirectClientDescriptors
public List<IClientDescriptor> getBackendRedirectClientDescriptors(UserContext uc)
Description copied from interface:IAuthenticationHandlerFinds all active client descriptors that are configured for the backend and redirect the user to an external IDP (in order).- Specified by:
getBackendRedirectClientDescriptorsin interfaceIAuthenticationHandler- 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.
-
getClientDescriptor
@Nullable public IClientDescriptor getClientDescriptor(UserContext uc, String clientName)
Description copied from interface:IAuthenticationHandlerReturns theclientfor the given client name.- Specified by:
getClientDescriptorin interfaceIAuthenticationHandler- 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
nullif none could be found.
-
getUserProfileByCredentials
public org.pac4j.core.profile.UserProfile getUserProfileByCredentials(UserContext uc, UUID callbackUuid, String userName, String password)
Description copied from interface:IAuthenticationHandlerGets the user profile for the given authenticator. Only allowed for LDAP authenticators at the moment.- Specified by:
getUserProfileByCredentialsin interfaceIAuthenticationHandler- Parameters:
uc- User context for accessing the database.callbackUuid- Callback UUID of the authenticatoruserName- Name of the userpassword- Password of the user- Returns:
- the pac4j
UserProfileof the user if the user was successfully validated.
-
getClient
@Nullable public static IClientDescriptor getClient(IEntityContext ec, String clientName)
Returns theclientfor the given client name.- Parameters:
ec- Current entity context for accessing the database.clientName- to get client descriptor for- Returns:
- the client for the given client name if available or
nullif none was found - Since:
- 8.0.0
-
-