org.keycloak.authentication.authenticators.resetcred

## 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 and Description
    --- | ---
    `static String` | `PROVIDER_ID`
    `static AuthenticationExecutionModel.Requirement[]` | `REQUIREMENT_CHOICES`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ResetCredentialEmail()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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 authenticator
    `String` | `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 initialized
    `boolean` | `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.ProviderFactory

      `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

  - ### Constructor Detail

    - #### ResetCredentialEmail

          public ResetCredentialEmail()

  - ### 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 interface `Authenticator`

    - #### 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 interface `Authenticator`

    - #### 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 interface `Authenticator`
      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 interface `Authenticator`
      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 interface `Authenticator`

    - #### getDisplayType

          public String getDisplayType()

      Description copied from interface: `ConfigurableAuthenticatorFactory`
      Friendly name for the authenticator
      Specified by:
        `getDisplayType` in interface `ConfigurableAuthenticatorFactory`
      Returns:

    - #### getReferenceCategory

          public String getReferenceCategory()

      Description copied from interface: `ConfigurableAuthenticatorFactory`
      General authenticator type, i.e. totp, password, cert.
      Specified by:
        `getReferenceCategory` in interface `ConfigurableAuthenticatorFactory`
      Returns:
        null if not a referencable category

    - #### isConfigurable

          public boolean isConfigurable()

      Description copied from interface: `ConfigurableAuthenticatorFactory`
      Is this authenticator configurable?
      Specified by:
        `isConfigurable` in interface `ConfigurableAuthenticatorFactory`
      Returns:

    - #### getRequirementChoices

          public AuthenticationExecutionModel.Requirement[] getRequirementChoices()

      Description copied from interface: `ConfigurableAuthenticatorFactory`
      What requirement settings are allowed.
      Specified by:
        `getRequirementChoices` in interface `ConfigurableAuthenticatorFactory`
      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 interface `ConfigurableAuthenticatorFactory`
      Returns:

    - #### getHelpText

          public String getHelpText()

      Specified by:
        `getHelpText` in interface `ConfiguredProvider`

    - #### getConfigProperties

          public List<ProviderConfigProperty> getConfigProperties()

      Specified by:
        `getConfigProperties` in interface `ConfiguredProvider`

    - #### close

          public void close()

      Description copied from interface: `ProviderFactory`
      This is called when the server shuts down.
      Specified by:
        `close` in interface `Provider`
      Specified by:
        `close` in interface `ProviderFactory<Authenticator>`

    - #### create

          public Authenticator create(KeycloakSession session)

      Specified by:
        `create` in interface `ProviderFactory<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 interface `ProviderFactory<Authenticator>`

    - #### postInit

          public void postInit(KeycloakSessionFactory factory)

      Description copied from interface: `ProviderFactory`
      Called after all provider factories have been initialized
      Specified by:
        `postInit` in interface `ProviderFactory<Authenticator>`

    - #### getId

          public String getId()

      Specified by:
        `getId` in interface `ProviderFactory<Authenticator>`

Copyright © 2021 JBoss by Red Hat. All rights reserved.