Class OAuth2AuthorizationEndpointFilter
java.lang.Object
org.springframework.web.filter.GenericFilterBean
org.springframework.web.filter.OncePerRequestFilter
org.springframework.security.oauth2.server.authorization.web.OAuth2AuthorizationEndpointFilter
- 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 OAuth2AuthorizationEndpointFilter
extends org.springframework.web.filter.OncePerRequestFilter
A
Filter for the OAuth 2.0 Authorization Code Grant, which handles the
processing of the OAuth 2.0 Authorization Request and Consent.-
Field Summary
Fields inherited from class org.springframework.web.filter.OncePerRequestFilter
ALREADY_FILTERED_SUFFIXFields inherited from class org.springframework.web.filter.GenericFilterBean
logger -
Constructor Summary
ConstructorsConstructorDescriptionOAuth2AuthorizationEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager) Constructs anOAuth2AuthorizationEndpointFilterusing the provided parameters.OAuth2AuthorizationEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager, String authorizationEndpointUri) Constructs anOAuth2AuthorizationEndpointFilterusing the provided parameters. -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoFilterInternal(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.FilterChain filterChain) voidsetAuthenticationConverter(org.springframework.security.web.authentication.AuthenticationConverter authenticationConverter) Sets theAuthenticationConverterused when attempting to extract an Authorization Request (or Consent) fromHttpServletRequestto an instance ofOAuth2AuthorizationCodeRequestAuthenticationTokenorOAuth2AuthorizationConsentAuthenticationTokenused for authenticating the request.voidsetAuthenticationDetailsSource(org.springframework.security.authentication.AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest, ?> authenticationDetailsSource) Sets theAuthenticationDetailsSourceused for building an authentication details instance fromHttpServletRequest.voidsetAuthenticationFailureHandler(org.springframework.security.web.authentication.AuthenticationFailureHandler authenticationFailureHandler) Sets theAuthenticationFailureHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationExceptionand returning theError Response.voidsetAuthenticationSuccessHandler(org.springframework.security.web.authentication.AuthenticationSuccessHandler authenticationSuccessHandler) Sets theAuthenticationSuccessHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationTokenand returning theAuthorization Response.voidsetConsentPage(String consentPage) Specify the URI to redirect Resource Owners to if consent is required.voidsetSessionAuthenticationStrategy(org.springframework.security.web.authentication.session.SessionAuthenticationStrategy sessionAuthenticationStrategy) Sets theSessionAuthenticationStrategyused for handling anOAuth2AuthorizationCodeRequestAuthenticationTokenbefore calling theAuthenticationSuccessHandler.Methods inherited from class org.springframework.web.filter.OncePerRequestFilter
doFilter, doFilterNestedErrorDispatch, getAlreadyFilteredAttributeName, isAsyncDispatch, isAsyncStarted, shouldNotFilter, shouldNotFilterAsyncDispatch, shouldNotFilterErrorDispatchMethods inherited from class org.springframework.web.filter.GenericFilterBean
addRequiredProperty, afterPropertiesSet, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext
-
Constructor Details
-
OAuth2AuthorizationEndpointFilter
public OAuth2AuthorizationEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager) Constructs anOAuth2AuthorizationEndpointFilterusing the provided parameters.- Parameters:
authenticationManager- the authentication manager
-
OAuth2AuthorizationEndpointFilter
public OAuth2AuthorizationEndpointFilter(org.springframework.security.authentication.AuthenticationManager authenticationManager, String authorizationEndpointUri) Constructs anOAuth2AuthorizationEndpointFilterusing the provided parameters.- Parameters:
authenticationManager- the authentication managerauthorizationEndpointUri- the endpointURIfor authorization 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:
doFilterInternalin classorg.springframework.web.filter.OncePerRequestFilter- Throws:
jakarta.servlet.ServletExceptionIOException
-
setAuthenticationDetailsSource
public void setAuthenticationDetailsSource(org.springframework.security.authentication.AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest, ?> authenticationDetailsSource) Sets theAuthenticationDetailsSourceused for building an authentication details instance fromHttpServletRequest.- Parameters:
authenticationDetailsSource- theAuthenticationDetailsSourceused for building an authentication details instance fromHttpServletRequest- Since:
- 0.3.1
-
setAuthenticationConverter
public void setAuthenticationConverter(org.springframework.security.web.authentication.AuthenticationConverter authenticationConverter) Sets theAuthenticationConverterused when attempting to extract an Authorization Request (or Consent) fromHttpServletRequestto an instance ofOAuth2AuthorizationCodeRequestAuthenticationTokenorOAuth2AuthorizationConsentAuthenticationTokenused for authenticating the request.- Parameters:
authenticationConverter- theAuthenticationConverterused when attempting to extract an Authorization Request (or Consent) fromHttpServletRequest
-
setAuthenticationSuccessHandler
public void setAuthenticationSuccessHandler(org.springframework.security.web.authentication.AuthenticationSuccessHandler authenticationSuccessHandler) Sets theAuthenticationSuccessHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationTokenand returning theAuthorization Response.- Parameters:
authenticationSuccessHandler- theAuthenticationSuccessHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationToken
-
setAuthenticationFailureHandler
public void setAuthenticationFailureHandler(org.springframework.security.web.authentication.AuthenticationFailureHandler authenticationFailureHandler) Sets theAuthenticationFailureHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationExceptionand returning theError Response.- Parameters:
authenticationFailureHandler- theAuthenticationFailureHandlerused for handling anOAuth2AuthorizationCodeRequestAuthenticationException
-
setSessionAuthenticationStrategy
public void setSessionAuthenticationStrategy(org.springframework.security.web.authentication.session.SessionAuthenticationStrategy sessionAuthenticationStrategy) Sets theSessionAuthenticationStrategyused for handling anOAuth2AuthorizationCodeRequestAuthenticationTokenbefore calling theAuthenticationSuccessHandler. If OpenID Connect is enabled, the default implementation tracks OpenID Connect sessions using aSessionRegistry.- Parameters:
sessionAuthenticationStrategy- theSessionAuthenticationStrategyused for handling anOAuth2AuthorizationCodeRequestAuthenticationToken- Since:
- 1.1
-
setConsentPage
Specify the URI to redirect Resource Owners to if consent is required. A default consent page will be generated when this attribute is not specified.- Parameters:
consentPage- the URI of the custom consent page to redirect to if consent is required (e.g. "/oauth2/consent")
-