org.keycloak.adapters.undertow

## Class UndertowRequestAuthenticator

- java.lang.Object
- - org.keycloak.adapters.RequestAuthenticator
  - - org.keycloak.adapters.undertow.UndertowRequestAuthenticator

- Direct Known Subclasses:
    ServletRequestAuthenticator

      public abstract class UndertowRequestAuthenticator
      extends RequestAuthenticator

  Version:
    $Revision: 1 $
  Author:
    Bill Burke, Stan Silvert ssilvert@redhat.com (C) 2014 Red Hat Inc.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected io.undertow.server.HttpServerExchange` | `exchange`
    `protected io.undertow.security.api.SecurityContext` | `securityContext`
    `protected UndertowUserSessionManagement` | `userSessionManagement`

    - ### Fields inherited from class org.keycloak.adapters.RequestAuthenticator

      `challenge, deployment, facade, log, sslRedirectPort`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `UndertowRequestAuthenticator(HttpFacade facade, KeycloakDeployment deployment, int sslRedirectPort, io.undertow.security.api.SecurityContext securityContext, io.undertow.server.HttpServerExchange exchange, UndertowUserSessionManagement userSessionManagement)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `completeBearerAuthentication(KeycloakPrincipal principal, RefreshableKeycloakSecurityContext session)`
    `protected void` | `completeOAuthAuthentication(KeycloakPrincipal principal, RefreshableKeycloakSecurityContext session)`
    `protected abstract KeycloakUndertowAccount` | `createAccount(KeycloakPrincipal principal, RefreshableKeycloakSecurityContext session)` Subclasses need to be able to create their own version of the KeycloakUndertowAccount
    `protected OAuthRequestAuthenticator` | `createOAuthAuthenticator()`
    `protected boolean` | `isCached()`
    `protected void` | `login(KeycloakAccount account)`
    `protected void` | `propagateKeycloakContext(KeycloakUndertowAccount account)`

    - ### Methods inherited from class org.keycloak.adapters.RequestAuthenticator

      `authenticate, completeAuthentication, completeAuthentication, createBearerTokenAuthenticator, getChallenge, verifySSL`

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

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

- - ### Field Detail

    - #### securityContext

          protected io.undertow.security.api.SecurityContext securityContext

    - #### exchange

          protected io.undertow.server.HttpServerExchange exchange

    - #### userSessionManagement

          protected UndertowUserSessionManagement userSessionManagement

  - ### Constructor Detail

    - #### UndertowRequestAuthenticator

          public UndertowRequestAuthenticator(HttpFacade facade,
                                      KeycloakDeployment deployment,
                                      int sslRedirectPort,
                                      io.undertow.security.api.SecurityContext securityContext,
                                      io.undertow.server.HttpServerExchange exchange,
                                      UndertowUserSessionManagement userSessionManagement)

  - ### Method Detail

    - #### propagateKeycloakContext

          protected void propagateKeycloakContext(KeycloakUndertowAccount account)

    - #### createOAuthAuthenticator

          protected OAuthRequestAuthenticator createOAuthAuthenticator()

      Specified by:
        `createOAuthAuthenticator` in class `RequestAuthenticator`

    - #### completeOAuthAuthentication

          protected void completeOAuthAuthentication(KeycloakPrincipal principal,
                                         RefreshableKeycloakSecurityContext session)

      Specified by:
        `completeOAuthAuthentication` in class `RequestAuthenticator`

    - #### login

          protected void login(KeycloakAccount account)

    - #### completeBearerAuthentication

          protected void completeBearerAuthentication(KeycloakPrincipal principal,
                                          RefreshableKeycloakSecurityContext session)

      Specified by:
        `completeBearerAuthentication` in class `RequestAuthenticator`

    - #### isCached

          protected boolean isCached()

      Specified by:
        `isCached` in class `RequestAuthenticator`

    - #### createAccount

          protected abstract KeycloakUndertowAccount createAccount(KeycloakPrincipal principal,
                                              RefreshableKeycloakSecurityContext session)

      Subclasses need to be able to create their own version of the KeycloakUndertowAccount
      Returns:
        The account

Copyright © 2014. All Rights Reserved.