public class BasicAuthenticationEntryPoint extends java.lang.Object implements AuthenticationEntryPoint, org.springframework.beans.factory.InitializingBean
ExceptionTraslationFilter
to commence authentication via the
BasicAuthenticationFilter
.
Once a user agent is authenticated using BASIC authentication, logout requires that the
browser be closed or an unauthorized (401) header be sent. The simplest way of
achieving the latter is to call the
commence(HttpServletRequest, HttpServletResponse, AuthenticationException)
method below. This will indicate to the browser its credentials are no longer
authorized, causing it to prompt the user to login again.
Constructor and Description |
---|
BasicAuthenticationEntryPoint() |
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.
|
java.lang.String |
getRealmName() |
void |
setRealmName(java.lang.String realmName) |
public void afterPropertiesSet() throws java.lang.Exception
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
java.lang.Exception
public void commence(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, AuthenticationException authException) throws java.io.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 AuthenticationEntryPoint
request
- that resulted in an AuthenticationException
response
- so that the user agent can begin authenticationauthException
- that caused the invocationjava.io.IOException
javax.servlet.ServletException
public java.lang.String getRealmName()
public void setRealmName(java.lang.String realmName)