Class ValidateOTP
- java.lang.Object
- 
- org.keycloak.authentication.authenticators.directgrant.AbstractDirectGrantAuthenticator
- 
- org.keycloak.authentication.authenticators.directgrant.ValidateOTP
 
 
- 
- All Implemented Interfaces:
- Authenticator,- AuthenticatorFactory,- ConfigurableAuthenticatorFactory,- CredentialValidator<OTPCredentialProvider>,- ConfiguredProvider,- Provider,- ProviderFactory<Authenticator>
 
 public class ValidateOTP extends AbstractDirectGrantAuthenticator implements CredentialValidator<OTPCredentialProvider> - Version:
- $Revision: 1 $
- Author:
- Bill Burke
 
- 
- 
Field SummaryFields Modifier and Type Field Description static StringPROVIDER_ID- 
Fields inherited from interface org.keycloak.authentication.ConfigurableAuthenticatorFactoryREQUIREMENT_CHOICES
 
- 
 - 
Constructor SummaryConstructors Constructor Description ValidateOTP()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidauthenticate(AuthenticationFlowContext context)Initial call for the authenticator.booleanconfiguredFor(KeycloakSession session, RealmModel realm, UserModel user)Is this authenticator configured for this user.List<ProviderConfigProperty>getConfigProperties()OTPCredentialProvidergetCredentialProvider(KeycloakSession session)StringgetDisplayType()Friendly name for the authenticatorStringgetHelpText()StringgetId()StringgetReferenceCategory()General authenticator type, i.e.AuthenticationExecutionModel.Requirement[]getRequirementChoices()What requirement settings are allowed.booleanisConfigurable()Is this authenticator configurable?booleanisUserSetupAllowed()Does this authenticator have required actions that can set if the user does not have this authenticator set up?booleanrequiresUser()Does this authenticator require that the user has already been identified? That AuthenticatorContext.getUser() is not null?voidsetRequiredActions(KeycloakSession session, RealmModel realm, UserModel user)Set actions to configure authenticator- 
Methods inherited from class org.keycloak.authentication.authenticators.directgrant.AbstractDirectGrantAuthenticatoraction, close, create, errorResponse, init, postInit
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface org.keycloak.authentication.AuthenticatorareRequiredActionsEnabled, getRequiredActions
 - 
Methods inherited from interface org.keycloak.provider.ConfiguredProvidergetConfig
 - 
Methods inherited from interface org.keycloak.authentication.CredentialValidatorgetCredentials, getType
 - 
Methods inherited from interface org.keycloak.provider.ProviderFactorygetConfigMetadata, order
 
- 
 
- 
- 
- 
Field Detail- 
PROVIDER_IDpublic static final String PROVIDER_ID - See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
authenticatepublic void authenticate(AuthenticationFlowContext context) Description copied from interface:AuthenticatorInitial 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:
- authenticatein interface- Authenticator
 
 - 
requiresUserpublic boolean requiresUser() Description copied from interface:AuthenticatorDoes this authenticator require that the user has already been identified? That AuthenticatorContext.getUser() is not null?- Specified by:
- requiresUserin interface- Authenticator
- Returns:
 
 - 
configuredForpublic boolean configuredFor(KeycloakSession session, RealmModel realm, UserModel user) Description copied from interface:AuthenticatorIs this authenticator configured for this user.- Specified by:
- configuredForin interface- Authenticator
- Returns:
 
 - 
setRequiredActionspublic void setRequiredActions(KeycloakSession session, RealmModel realm, UserModel user) Description copied from interface:AuthenticatorSet actions to configure authenticator- Specified by:
- setRequiredActionsin interface- Authenticator
 
 - 
isUserSetupAllowedpublic boolean isUserSetupAllowed() Description copied from interface:ConfigurableAuthenticatorFactoryDoes this authenticator have required actions that can set if the user does not have this authenticator set up?- Specified by:
- isUserSetupAllowedin interface- ConfigurableAuthenticatorFactory
- Returns:
 
 - 
getDisplayTypepublic String getDisplayType() Description copied from interface:ConfigurableAuthenticatorFactoryFriendly name for the authenticator- Specified by:
- getDisplayTypein interface- ConfigurableAuthenticatorFactory
- Returns:
 
 - 
getReferenceCategorypublic String getReferenceCategory() Description copied from interface:ConfigurableAuthenticatorFactoryGeneral authenticator type, i.e. totp, password, cert.- Specified by:
- getReferenceCategoryin interface- ConfigurableAuthenticatorFactory
- Returns:
- null if not a referencable category
 
 - 
isConfigurablepublic boolean isConfigurable() Description copied from interface:ConfigurableAuthenticatorFactoryIs this authenticator configurable?- Specified by:
- isConfigurablein interface- ConfigurableAuthenticatorFactory
- Returns:
 
 - 
getRequirementChoicespublic AuthenticationExecutionModel.Requirement[] getRequirementChoices() Description copied from interface:ConfigurableAuthenticatorFactoryWhat requirement settings are allowed.- Specified by:
- getRequirementChoicesin interface- ConfigurableAuthenticatorFactory
- Returns:
 
 - 
getHelpTextpublic String getHelpText() - Specified by:
- getHelpTextin interface- ConfiguredProvider
 
 - 
getConfigPropertiespublic List<ProviderConfigProperty> getConfigProperties() - Specified by:
- getConfigPropertiesin interface- ConfiguredProvider
 
 - 
getIdpublic String getId() - Specified by:
- getIdin interface- ProviderFactory<Authenticator>
 
 - 
getCredentialProviderpublic OTPCredentialProvider getCredentialProvider(KeycloakSession session) - Specified by:
- getCredentialProviderin interface- CredentialValidator<OTPCredentialProvider>
 
 
- 
 
-