public class DelegatingAuthenticationEntryPoint extends Object implements AuthenticationEntryPoint, InitializingBean
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.| Constructor and Description |
|---|
DelegatingAuthenticationEntryPoint(LinkedHashMap<RequestMatcher,AuthenticationEntryPoint> entryPoints) |
| Modifier and Type | Method and Description |
|---|---|
void |
afterPropertiesSet() |
void |
commence(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
AuthenticationException authException)
Commences an authentication scheme.
|
void |
setDefaultEntryPoint(AuthenticationEntryPoint defaultEntryPoint)
EntryPoint which is used when no RequestMatcher returned true
|
public DelegatingAuthenticationEntryPoint(LinkedHashMap<RequestMatcher,AuthenticationEntryPoint> entryPoints)
public void commence(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
AuthenticationException authException)
throws IOException,
javax.servlet.ServletException
AuthenticationEntryPoint
ExceptionTranslationFilter will populate the HttpSession attribute named
AbstractAuthenticationProcessingFilter.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.
commence in interface AuthenticationEntryPointrequest - that resulted in an AuthenticationExceptionresponse - so that the user agent can begin authenticationauthException - that caused the invocationIOExceptionjavax.servlet.ServletExceptionpublic void setDefaultEntryPoint(AuthenticationEntryPoint defaultEntryPoint)
public void afterPropertiesSet()
throws Exception
afterPropertiesSet in interface InitializingBeanException