Class ResetCredentialEmail
- java.lang.Object
-
- org.keycloak.authentication.authenticators.resetcred.ResetCredentialEmail
-
- All Implemented Interfaces:
Authenticator
,AuthenticatorFactory
,ConfigurableAuthenticatorFactory
,ConfiguredProvider
,Provider
,ProviderFactory<Authenticator>
public class ResetCredentialEmail extends Object implements Authenticator, AuthenticatorFactory
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Field Summary
Fields Modifier and Type Field Description static String
PROVIDER_ID
static AuthenticationExecutionModel.Requirement[]
REQUIREMENT_CHOICES
-
Constructor Summary
Constructors Constructor Description ResetCredentialEmail()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
action(AuthenticationFlowContext context)
Called from a form action invocation.void
authenticate(AuthenticationFlowContext context)
Initial call for the authenticator.void
close()
This is called when the server shuts down.boolean
configuredFor(KeycloakSession session, RealmModel realm, UserModel user)
Is this authenticator configured for this user.Authenticator
create(KeycloakSession session)
List<ProviderConfigProperty>
getConfigProperties()
String
getDisplayType()
Friendly name for the authenticatorString
getHelpText()
String
getId()
static Long
getLastChangedTimestamp(KeycloakSession session, RealmModel realm, UserModel user)
String
getReferenceCategory()
General authenticator type, i.e.AuthenticationExecutionModel.Requirement[]
getRequirementChoices()
What requirement settings are allowed.void
init(Config.Scope config)
Only called once when the factory is first created.boolean
isConfigurable()
Is this authenticator configurable?boolean
isUserSetupAllowed()
Does this authenticator have required actions that can set if the user does not have this authenticator set up?void
postInit(KeycloakSessionFactory factory)
Called after all provider factories have been initializedboolean
requiresUser()
Does this authenticator require that the user has already been identified? That AuthenticatorContext.getUser() is not null?void
setRequiredActions(KeycloakSession session, RealmModel realm, UserModel user)
Set actions to configure authenticator-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.keycloak.authentication.Authenticator
areRequiredActionsEnabled, getRequiredActions
-
Methods inherited from interface org.keycloak.provider.ConfiguredProvider
getConfig
-
Methods inherited from interface org.keycloak.provider.ProviderFactory
getConfigMetadata, order
-
-
-
-
Field Detail
-
PROVIDER_ID
public static final String PROVIDER_ID
- See Also:
- Constant Field Values
-
REQUIREMENT_CHOICES
public static final AuthenticationExecutionModel.Requirement[] REQUIREMENT_CHOICES
-
-
Method Detail
-
authenticate
public void authenticate(AuthenticationFlowContext context)
Description copied from interface:Authenticator
Initial call for the authenticator. This method should check the current HTTP request to determine if the request satifies the Authenticator's requirements. If it doesn't, it should send back a challenge response by calling the AuthenticationFlowContext.challenge(Response). If this challenge is a authentication, the action URL of the form must point to /realms/{realm}/login-actions/authenticate?code={session-code}&execution={executionId} or /realms/{realm}/login-actions/registration?code={session-code}&execution={executionId} {session-code} pertains to the code generated from AuthenticationFlowContext.generateAccessCode(). The {executionId} pertains to the AuthenticationExecutionModel.getId() value obtained from AuthenticationFlowContext.getExecution(). The action URL will invoke the action() method described below.- Specified by:
authenticate
in interfaceAuthenticator
-
getLastChangedTimestamp
public static Long getLastChangedTimestamp(KeycloakSession session, RealmModel realm, UserModel user)
-
action
public void action(AuthenticationFlowContext context)
Description copied from interface:Authenticator
Called from a form action invocation.- Specified by:
action
in interfaceAuthenticator
-
requiresUser
public boolean requiresUser()
Description copied from interface:Authenticator
Does this authenticator require that the user has already been identified? That AuthenticatorContext.getUser() is not null?- Specified by:
requiresUser
in interfaceAuthenticator
- Returns:
-
configuredFor
public boolean configuredFor(KeycloakSession session, RealmModel realm, UserModel user)
Description copied from interface:Authenticator
Is this authenticator configured for this user.- Specified by:
configuredFor
in interfaceAuthenticator
- Returns:
-
setRequiredActions
public void setRequiredActions(KeycloakSession session, RealmModel realm, UserModel user)
Description copied from interface:Authenticator
Set actions to configure authenticator- Specified by:
setRequiredActions
in interfaceAuthenticator
-
getDisplayType
public String getDisplayType()
Description copied from interface:ConfigurableAuthenticatorFactory
Friendly name for the authenticator- Specified by:
getDisplayType
in interfaceConfigurableAuthenticatorFactory
- Returns:
-
getReferenceCategory
public String getReferenceCategory()
Description copied from interface:ConfigurableAuthenticatorFactory
General authenticator type, i.e. totp, password, cert.- Specified by:
getReferenceCategory
in interfaceConfigurableAuthenticatorFactory
- Returns:
- null if not a referencable category
-
isConfigurable
public boolean isConfigurable()
Description copied from interface:ConfigurableAuthenticatorFactory
Is this authenticator configurable?- Specified by:
isConfigurable
in interfaceConfigurableAuthenticatorFactory
- Returns:
-
getRequirementChoices
public AuthenticationExecutionModel.Requirement[] getRequirementChoices()
Description copied from interface:ConfigurableAuthenticatorFactory
What requirement settings are allowed.- Specified by:
getRequirementChoices
in interfaceConfigurableAuthenticatorFactory
- Returns:
-
isUserSetupAllowed
public boolean isUserSetupAllowed()
Description copied from interface:ConfigurableAuthenticatorFactory
Does this authenticator have required actions that can set if the user does not have this authenticator set up?- Specified by:
isUserSetupAllowed
in interfaceConfigurableAuthenticatorFactory
- Returns:
-
getHelpText
public String getHelpText()
- Specified by:
getHelpText
in interfaceConfiguredProvider
-
getConfigProperties
public List<ProviderConfigProperty> getConfigProperties()
- Specified by:
getConfigProperties
in interfaceConfiguredProvider
-
close
public void close()
Description copied from interface:ProviderFactory
This is called when the server shuts down.- Specified by:
close
in interfaceProvider
- Specified by:
close
in interfaceProviderFactory<Authenticator>
-
create
public Authenticator create(KeycloakSession session)
- Specified by:
create
in interfaceProviderFactory<Authenticator>
-
init
public void init(Config.Scope config)
Description copied from interface:ProviderFactory
Only called once when the factory is first created. This config is pulled from keycloak_server.json- Specified by:
init
in interfaceProviderFactory<Authenticator>
-
postInit
public void postInit(KeycloakSessionFactory factory)
Description copied from interface:ProviderFactory
Called after all provider factories have been initialized- Specified by:
postInit
in interfaceProviderFactory<Authenticator>
-
getId
public String getId()
- Specified by:
getId
in interfaceProviderFactory<Authenticator>
-
-