What is the recommended way to add Spring Security to a web application that is using Spring\'s new WebApplicationInitializer
interface instead of the web.xml file?
public class SIServerSecurityWebApplicationInitializer extends AbstractSecurityWebApplicationInitializer {
@Override
protected void beforeSpringSecurityFilterChain(ServletContext servletContext) {
Dynamic registration = servletContext.addFilter("TenantServletFilter", TenantServletFilter.class);
EnumSet dispatcherTypes = getSecurityDispatcherTypes();
registration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), false, "/*");
}
}
This scenario is for executing a filter before executing other filters.
If you want to execute a filter after other filers pass true
in registration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*");
. Also check the DispatcherType ASYNC, FORWARD etc.