Interface IAuthenticationHandler
-
- All Superinterfaces:
IAPIHandler
,Serializable
- All Known Implementing Classes:
AuthenticationHandler
public interface IAuthenticationHandler extends IAPIHandler
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IClientDescriptor
getActiveClientDescriptor(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).IClientDescriptor
getClientDescriptor(UserContext uc, String clientName)
Returns theclient
for the given client name.PagedResult<IClientDescriptor>
getClientDescriptorsByUserPortal(UserContext uc, UserPortal userPortal, int page, int pageSize)
Gets all client descriptors available for the given user portalPagedResult<IClientDescriptor>
getClientDescriptorsByUserPortal(UserContext uc, UUID userPortalUuid, int page, int pageSize)
Gets all client descriptors available for the user portal given by its UUID.Set<IClientDescriptor>
getRestClientDescriptors(UserContext uc)
Finds all active client descriptors that are available for the REST API.org.pac4j.core.profile.UserProfile
getUserProfileByCredentials(UserContext uc, UUID callbackUuid, String userName, String password)
Gets the user profile for the given authenticator.AuthenticationData
loadAuthRequestData(UserContext uc, AuthenticationDataRequest request)
Reads the data required for authenticating a form request, including theform
, theclient
, and theauthenticator configurations
.-
Methods inherited from interface de.xima.fc.com.interfaces.IAPIHandler
getName
-
-
-
-
Method Detail
-
loadAuthRequestData
AuthenticationData loadAuthRequestData(UserContext uc, AuthenticationDataRequest request)
Reads the data required for authenticating a form request, including theform
, theclient
, and theauthenticator configurations
.- Parameters:
uc
- User context for accessing the database.request
- Data with theclient
,form
, andform 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
-
getRestClientDescriptors
Set<IClientDescriptor> getRestClientDescriptors(UserContext uc)
Finds all active client descriptors that are available for the REST API.- Parameters:
uc
- user context for accessing the database.- Returns:
- a set of all active client descriptors available for the REST API.
- Since:
- 8.2.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 theclient
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 authenticatoruserName
- Name of the userpassword
- Password of the user- Returns:
- the pac4j
UserProfile
of the user if the user was successfully validated. - Since:
- 8.0.0
-
getClientDescriptorsByUserPortal
PagedResult<IClientDescriptor> getClientDescriptorsByUserPortal(UserContext uc, UserPortal userPortal, int page, int pageSize)
Gets all client descriptors available for the given user portal- Parameters:
uc
- user context for database transactions.userPortal
- to get the client descriptors for.page
- to get.pageSize
- size of the page to get.- Returns:
- the client descriptors available for the given user portal
- Since:
- 8.2.0
-
getClientDescriptorsByUserPortal
PagedResult<IClientDescriptor> getClientDescriptorsByUserPortal(UserContext uc, UUID userPortalUuid, int page, int pageSize)
Gets all client descriptors available for the user portal given by its UUID.- Parameters:
uc
- user context for database transactions.userPortalUuid
- UUID of the user portal to get the client descriptors for.page
- page to get.pageSize
- size of the page to get.- Returns:
- the client descriptors available for the user portal given by its UUID.
- Since:
- 8.2.0
-
-