Class SessionLogoutHandler

java.lang.Object
io.micronaut.security.session.SessionLogoutHandler
All Implemented Interfaces:
LogoutHandler<io.micronaut.http.HttpRequest<?>, io.micronaut.http.MutableHttpResponse<?>>

@Requires(condition=SessionAuthenticationModeCondition.class) @Singleton public class SessionLogoutHandler extends Object implements LogoutHandler<io.micronaut.http.HttpRequest<?>, io.micronaut.http.MutableHttpResponse<?>>
LogoutHandler implementation for Session-Based Authentication. On logout, the session is deleted from the SessionStore and the session identifier is expired in the response (e.g. the session cookie is cleared), so the session identifier cannot be reused after logout.
Since:
1.0
Author:
Sergio del Amo
  • Field Details

    • logout

      protected final @Nullable String logout
  • Constructor Details

    • SessionLogoutHandler

      @Inject public SessionLogoutHandler(RedirectConfiguration redirectConfiguration, RedirectService redirectService, io.micronaut.session.SessionStore<io.micronaut.session.Session> sessionStore, List<io.micronaut.session.http.HttpSessionIdEncoder> sessionIdEncoders)
      Constructor.
      Parameters:
      redirectConfiguration - Redirect Configuration
      redirectService - Redirection Service
      sessionStore - The session store
      sessionIdEncoders - Session ID encoders used to expire the session identifier in the response
    • SessionLogoutHandler

      @Deprecated(forRemoval=true, since="5.4.0") public SessionLogoutHandler(RedirectConfiguration redirectConfiguration, RedirectService redirectService)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Use SessionLogoutHandler(RedirectConfiguration, RedirectService, SessionStore, List) instead. Without a SessionStore, the session is not deleted on logout; only the authentication is removed from it.
      Constructor.
      Parameters:
      redirectConfiguration - Redirect Configuration
      redirectService - Redirection Service
  • Method Details

    • logout

      public io.micronaut.http.MutableHttpResponse<?> logout(io.micronaut.http.HttpRequest<?> request)
      Specified by:
      logout in interface LogoutHandler<io.micronaut.http.HttpRequest<?>, io.micronaut.http.MutableHttpResponse<?>>
      Parameters:
      request - The HTTP Request being executed
      Returns:
      An HttpResponse built after the user logs out