Class DelegatingAuthenticationEntryPoint
java.lang.Object
org.springframework.security.web.authentication.DelegatingAuthenticationEntryPoint
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean
,AuthenticationEntryPoint
public class DelegatingAuthenticationEntryPoint
extends Object
implements AuthenticationEntryPoint, org.springframework.beans.factory.InitializingBean
An
AuthenticationEntryPoint
which selects a concrete
AuthenticationEntryPoint
based on a RequestMatcher
evaluation.
A configuration might look like this:
<bean id="daep" class="org.springframework.security.web.authentication.DelegatingAuthenticationEntryPoint"> <constructor-arg> <map> <entry key="hasIpAddress('192.168.1.0/24') and hasHeader('User-Agent','Mozilla')" value-ref="firstAEP" /> <entry key="hasHeader('User-Agent','MSIE')" value-ref="secondAEP" /> </map> </constructor-arg> <property name="defaultEntryPoint" ref="defaultAEP"/> </bean>This example uses the
RequestMatcherEditor
which creates a
ELRequestMatcher
instances for the map keys.- Since:
- 3.0.2
-
Constructor Summary
ConstructorDescriptionDelegatingAuthenticationEntryPoint
(LinkedHashMap<RequestMatcher, AuthenticationEntryPoint> entryPoints) -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
commence
(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, AuthenticationException authException) Commences an authentication scheme.void
setDefaultEntryPoint
(AuthenticationEntryPoint defaultEntryPoint) EntryPoint which is used when no RequestMatcher returned true
-
Constructor Details
-
DelegatingAuthenticationEntryPoint
public DelegatingAuthenticationEntryPoint(LinkedHashMap<RequestMatcher, AuthenticationEntryPoint> entryPoints)
-
-
Method Details
-
commence
public void commence(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, AuthenticationException authException) throws IOException, jakarta.servlet.ServletException Description copied from interface:AuthenticationEntryPoint
Commences an authentication scheme.ExceptionTranslationFilter
will populate theHttpSession
attribute namedAbstractAuthenticationProcessingFilter.SPRING_SECURITY_SAVED_REQUEST_KEY
with the requested target URL before calling this method.Implementations should modify the headers on the
ServletResponse
as necessary to commence the authentication process.- Specified by:
commence
in interfaceAuthenticationEntryPoint
- Parameters:
request
- that resulted in anAuthenticationException
response
- so that the user agent can begin authenticationauthException
- that caused the invocation- Throws:
IOException
jakarta.servlet.ServletException
-
setDefaultEntryPoint
EntryPoint which is used when no RequestMatcher returned true -
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
-