Class IdTokenLoginHandler

java.lang.Object
io.micronaut.security.token.cookie.CookieLoginHandler
io.micronaut.security.oauth2.endpoint.token.response.IdTokenLoginHandler
All Implemented Interfaces:
io.micronaut.security.handlers.LoginHandler<io.micronaut.http.HttpRequest<?>,io.micronaut.http.MutableHttpResponse<?>>, io.micronaut.security.handlers.RedirectingLoginHandler<io.micronaut.http.HttpRequest<?>,io.micronaut.http.MutableHttpResponse<?>>

@Requires(property="micronaut.security.authentication",value="idtoken") @Requires(classes=io.micronaut.http.HttpRequest.class) @Singleton public class IdTokenLoginHandler extends io.micronaut.security.token.cookie.CookieLoginHandler
Sets CookieLoginHandler`s cookie value to the idtoken received from an authentication provider. The cookie expiration is set to the expiration of the IDToken exp claim.
Since:
2.0.0
  • Field Summary

    Fields inherited from class io.micronaut.security.token.cookie.CookieLoginHandler

    accessTokenCookieConfiguration, loginFailure, loginSuccess, priorToLoginPersistence, refresh
  • Constructor Summary

    Constructors
    Constructor
    Description
    IdTokenLoginHandler(io.micronaut.security.token.cookie.AccessTokenCookieConfiguration accessTokenCookieConfiguration, io.micronaut.security.config.RedirectConfiguration redirectConfiguration, io.micronaut.security.config.RedirectService redirectService, @Nullable io.micronaut.security.errors.PriorToLoginPersistence<io.micronaut.http.HttpRequest<?>,io.micronaut.http.MutableHttpResponse<?>> priorToLoginPersistence)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Duration
    cookieExpiration(io.micronaut.security.authentication.Authentication authentication, io.micronaut.http.HttpRequest<?> request)
     
    List<io.micronaut.http.cookie.Cookie>
    getCookies(io.micronaut.security.authentication.Authentication authentication, io.micronaut.http.HttpRequest<?> request)
    List<io.micronaut.http.cookie.Cookie>
    getCookies(io.micronaut.security.authentication.Authentication authentication, String refreshToken, io.micronaut.http.HttpRequest<?> request)
    protected Optional<String>
    parseIdToken(io.micronaut.security.authentication.Authentication authentication)
     

    Methods inherited from class io.micronaut.security.token.cookie.CookieLoginHandler

    applyCookies, createRefreshResponse, createSuccessResponse, loginFailed, loginRefresh, loginSuccess

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • IdTokenLoginHandler

      public IdTokenLoginHandler(io.micronaut.security.token.cookie.AccessTokenCookieConfiguration accessTokenCookieConfiguration, io.micronaut.security.config.RedirectConfiguration redirectConfiguration, io.micronaut.security.config.RedirectService redirectService, @Nullable @Nullable io.micronaut.security.errors.PriorToLoginPersistence<io.micronaut.http.HttpRequest<?>,io.micronaut.http.MutableHttpResponse<?>> priorToLoginPersistence)
      Parameters:
      accessTokenCookieConfiguration - Access token cookie configuration
      redirectConfiguration - Redirect configuration
      redirectService - Redirect service
      priorToLoginPersistence - The prior to login persistence strategy
  • Method Details

    • getCookies

      public List<io.micronaut.http.cookie.Cookie> getCookies(io.micronaut.security.authentication.Authentication authentication, io.micronaut.http.HttpRequest<?> request)
      Specified by:
      getCookies in class io.micronaut.security.token.cookie.CookieLoginHandler
    • getCookies

      public List<io.micronaut.http.cookie.Cookie> getCookies(io.micronaut.security.authentication.Authentication authentication, String refreshToken, io.micronaut.http.HttpRequest<?> request)
      Specified by:
      getCookies in class io.micronaut.security.token.cookie.CookieLoginHandler
    • parseIdToken

      protected Optional<String> parseIdToken(io.micronaut.security.authentication.Authentication authentication)
      Parameters:
      authentication - User Details
      Returns:
      parse the idtoken from the user details attributes
    • cookieExpiration

      protected Duration cookieExpiration(io.micronaut.security.authentication.Authentication authentication, io.micronaut.http.HttpRequest<?> request)
      Parameters:
      authentication - User Details
      request - The current request
      Returns:
      the expiration of the providers JWT