java.lang.Object
org.springframework.web.filter.GenericFilterBean
org.springframework.web.filter.OncePerRequestFilter
org.springframework.security.oauth2.server.authorization.oidc.web.OidcLogoutEndpointFilter
All Implemented Interfaces:
jakarta.servlet.Filter, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.EnvironmentAware, org.springframework.core.env.EnvironmentCapable, org.springframework.web.context.ServletContextAware

public final class OidcLogoutEndpointFilter extends org.springframework.web.filter.OncePerRequestFilter
A Filter that processes OpenID Connect 1.0 RP-Initiated Logout Requests.
Since:
1.1
See Also:
  • Field Summary

    Fields inherited from class org.springframework.web.filter.OncePerRequestFilter

    ALREADY_FILTERED_SUFFIX

    Fields inherited from class org.springframework.web.filter.GenericFilterBean

    logger
  • Constructor Summary

    Constructors
    Constructor
    Description
    OidcLogoutEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager)
    Constructs an OidcLogoutEndpointFilter using the provided parameters.
    OidcLogoutEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager, String logoutEndpointUri)
    Constructs an OidcLogoutEndpointFilter using the provided parameters.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    doFilterInternal(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.FilterChain filterChain)
     
    void
    setAuthenticationConverter(org.springframework.security.web.authentication.AuthenticationConverter authenticationConverter)
    Sets the AuthenticationConverter used when attempting to extract a Logout Request from HttpServletRequest to an instance of OidcLogoutAuthenticationToken used for authenticating the request.
    void
    setAuthenticationFailureHandler(org.springframework.security.web.authentication.AuthenticationFailureHandler authenticationFailureHandler)
    Sets the AuthenticationFailureHandler used for handling an OAuth2AuthenticationException and returning the Error Response.
    void
    setAuthenticationSuccessHandler(org.springframework.security.web.authentication.AuthenticationSuccessHandler authenticationSuccessHandler)
    Sets the AuthenticationSuccessHandler used for handling an OidcLogoutAuthenticationToken and performing the logout.

    Methods inherited from class org.springframework.web.filter.OncePerRequestFilter

    doFilter, doFilterNestedErrorDispatch, getAlreadyFilteredAttributeName, isAsyncDispatch, isAsyncStarted, shouldNotFilter, shouldNotFilterAsyncDispatch, shouldNotFilterErrorDispatch

    Methods inherited from class org.springframework.web.filter.GenericFilterBean

    addRequiredProperty, afterPropertiesSet, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext

    Methods inherited from class java.lang.Object

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

    • OidcLogoutEndpointFilter

      public OidcLogoutEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager)
      Constructs an OidcLogoutEndpointFilter using the provided parameters.
      Parameters:
      authenticationManager - the authentication manager
    • OidcLogoutEndpointFilter

      public OidcLogoutEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager, String logoutEndpointUri)
      Constructs an OidcLogoutEndpointFilter using the provided parameters.
      Parameters:
      authenticationManager - the authentication manager
      logoutEndpointUri - the endpoint URI for OpenID Connect 1.0 RP-Initiated Logout Requests
  • Method Details

    • doFilterInternal

      protected void doFilterInternal(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.FilterChain filterChain) throws jakarta.servlet.ServletException, IOException
      Specified by:
      doFilterInternal in class org.springframework.web.filter.OncePerRequestFilter
      Throws:
      jakarta.servlet.ServletException
      IOException
    • setAuthenticationConverter

      public void setAuthenticationConverter(org.springframework.security.web.authentication.AuthenticationConverter authenticationConverter)
      Sets the AuthenticationConverter used when attempting to extract a Logout Request from HttpServletRequest to an instance of OidcLogoutAuthenticationToken used for authenticating the request.
      Parameters:
      authenticationConverter - the AuthenticationConverter used when attempting to extract a Logout Request from HttpServletRequest
    • setAuthenticationSuccessHandler

      public void setAuthenticationSuccessHandler(org.springframework.security.web.authentication.AuthenticationSuccessHandler authenticationSuccessHandler)
      Sets the AuthenticationSuccessHandler used for handling an OidcLogoutAuthenticationToken and performing the logout.
      Parameters:
      authenticationSuccessHandler - the AuthenticationSuccessHandler used for handling an OidcLogoutAuthenticationToken
    • setAuthenticationFailureHandler

      public void setAuthenticationFailureHandler(org.springframework.security.web.authentication.AuthenticationFailureHandler authenticationFailureHandler)
      Sets the AuthenticationFailureHandler used for handling an OAuth2AuthenticationException and returning the Error Response.
      Parameters:
      authenticationFailureHandler - the AuthenticationFailureHandler used for handling an OAuth2AuthenticationException