Class ClearSecurityContextFilter
- java.lang.Object
-
- jetbrains.buildServer.controllers.filters.ClearSecurityContextFilter
-
- All Implemented Interfaces:
javax.servlet.Filter
public class ClearSecurityContextFilter extends Object implements javax.servlet.Filter
This interceptor clears security context of any authority holders. AuthorityHolder is populated by authentication scheme, after successful authentication, permissions are checked and other interceptors are executed. After completion of request processing, security context is cleared, seeHandlerInterceptor.afterCompletion(HttpServletRequest, HttpServletResponse, Object, Exception)andSkippableInterceptor.afterCompletion(HttpServletRequest, HttpServletResponse, Object, Exception)) However, if one of the interceptors prevents interceptor chain to proceed (returnsfalseinHandlerInterceptor.preHandle(HttpServletRequest, HttpServletResponse, Object)) security context of current thread is not cleared and can affect other requests (seeAgentsLoadBalancerandArtifactUploadController) resulting in unavailability of running builds inRunningBuildsManagerRequests that represent includes or forwards should not be processed, as such requests will not be re-authenticated It is important for this interceptor to be first in chain
-
-
Constructor Summary
Constructors Constructor Description ClearSecurityContextFilter(SecurityContextEx securityContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()voiddoFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)voidinit(javax.servlet.FilterConfig filterConfig)
-
-
-
Constructor Detail
-
ClearSecurityContextFilter
public ClearSecurityContextFilter(@NotNull SecurityContextEx securityContext)
-
-
Method Detail
-
doFilter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException- Specified by:
doFilterin interfacejavax.servlet.Filter- Throws:
IOExceptionjavax.servlet.ServletException
-
init
public void init(javax.servlet.FilterConfig filterConfig)
- Specified by:
initin interfacejavax.servlet.Filter
-
destroy
public void destroy()
- Specified by:
destroyin interfacejavax.servlet.Filter
-
-