org.keycloak.adapters.tomcat

## Class KeycloakAuthenticatorValve

- java.lang.Object
- - org.apache.catalina.util.LifecycleBase
  - - org.apache.catalina.util.LifecycleMBeanBase
    - - org.apache.catalina.valves.ValveBase
      - - org.apache.catalina.authenticator.AuthenticatorBase
        - - org.apache.catalina.authenticator.FormAuthenticator
          - - org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve
            - - org.keycloak.adapters.tomcat.KeycloakAuthenticatorValve

- All Implemented Interfaces:
    MBeanRegistration, org.apache.catalina.Authenticator, org.apache.catalina.Contained, org.apache.catalina.JmxEnabled, org.apache.catalina.Lifecycle, org.apache.catalina.LifecycleListener, org.apache.catalina.Valve

      public class KeycloakAuthenticatorValve
      extends AbstractKeycloakAuthenticatorValve

  Keycloak authentication valve
  Version:
    $Revision: 1 $
  Author:
    Bill Burke

- - ### Field Summary

    - ### Fields inherited from class org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve

      `deploymentContext, nodesRegistrationManagement, TOKEN_STORE_NOTE, userSessionManagement`

    - ### Fields inherited from class org.apache.catalina.authenticator.FormAuthenticator

      `characterEncoding, landingPage`

    - ### Fields inherited from class org.apache.catalina.authenticator.AuthenticatorBase

      `alwaysUseSession, AUTH_HEADER_NAME, cache, changeSessionIdOnAuthentication, context, disableProxyCaching, REALM_NAME, securePagesWithPragma, secureRandomAlgorithm, secureRandomClass, secureRandomProvider, sessionIdGenerator, sm, sso`

    - ### Fields inherited from class org.apache.catalina.valves.ValveBase

      `asyncSupported, container, containerLog, next`

    - ### Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase

      `mserver`

    - ### Fields inherited from interface org.apache.catalina.Lifecycle

      `AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `KeycloakAuthenticatorValve()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `authenticate(org.apache.catalina.connector.Request request, org.apache.catalina.connector.Response response, org.apache.catalina.deploy.LoginConfig config)`
    `protected GenericPrincipalFactory` | `createPrincipalFactory()`
    `void` | `logout(org.apache.catalina.connector.Request request)`
    `void` | `start()`

    - ### Methods inherited from class org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve

      `authenticateInternal, beforeStop, checkKeycloakSession, getTokenStore, invoke, keycloakInit, keycloakRestoreRequest, keycloakSaveRequest, lifecycleEvent, logoutInternal`

    - ### Methods inherited from class org.apache.catalina.authenticator.FormAuthenticator

      `authenticate, forwardToErrorPage, forwardToLoginPage, getAuthMethod, getCharacterEncoding, getLandingPage, matchRequest, restoreRequest, savedRequestURL, saveRequest, setCharacterEncoding, setLandingPage`

    - ### Methods inherited from class org.apache.catalina.authenticator.AuthenticatorBase

      `associate, doLogin, getAlwaysUseSession, getCache, getChangeSessionIdOnAuthentication, getContainer, getDisableProxyCaching, getRealmName, getRequestCertificates, getSecurePagesWithPragma, getSecureRandomAlgorithm, getSecureRandomClass, getSecureRandomProvider, login, reauthenticateFromSSO, register, setAlwaysUseSession, setCache, setChangeSessionIdOnAuthentication, setContainer, setDisableProxyCaching, setSecurePagesWithPragma, setSecureRandomAlgorithm, setSecureRandomClass, setSecureRandomProvider, startInternal, stopInternal`

    - ### Methods inherited from class org.apache.catalina.valves.ValveBase

      `backgroundProcess, event, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setNext, toString`

    - ### Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase

      `destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister`

    - ### Methods inherited from class org.apache.catalina.util.LifecycleBase

      `addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, stop`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### KeycloakAuthenticatorValve

          public KeycloakAuthenticatorValve()

  - ### Method Detail

    - #### authenticate

          public boolean authenticate(org.apache.catalina.connector.Request request,
                             org.apache.catalina.connector.Response response,
                             org.apache.catalina.deploy.LoginConfig config)
                               throws IOException

      Throws:
        `IOException`

    - #### start

          public void start()
                     throws org.apache.catalina.LifecycleException

      Specified by:
        `start` in interface `org.apache.catalina.Lifecycle`
      Overrides:
        `start` in class `org.apache.catalina.util.LifecycleBase`
      Throws:
        `org.apache.catalina.LifecycleException`

    - #### logout

          public void logout(org.apache.catalina.connector.Request request)
                      throws javax.servlet.ServletException

      Specified by:
        `logout` in interface `org.apache.catalina.Authenticator`
      Overrides:
        `logout` in class `org.apache.catalina.authenticator.AuthenticatorBase`
      Throws:
        `javax.servlet.ServletException`

    - #### createPrincipalFactory

          protected GenericPrincipalFactory createPrincipalFactory()

      Specified by:
        `createPrincipalFactory` in class `AbstractKeycloakAuthenticatorValve`

Copyright © 2014. All Rights Reserved.