【发布时间】:2015-11-25 21:42:59
【问题描述】:
我正在处理复杂的手动安全配置(Spring 3.4、Spring Security 3.2)。过滤器链已经手动配置了httpSessionContextIntegrationFilter和我们配置的其他bean。
<bean id="filterChainProxy" class="org.springframework.security.web.FilterChainProxy">
<security:filter-chain-map path-type="ant" request-matcher="ant">
<security:filter-chain pattern="/**" filters="httpSessionContextIntegrationFilter, ... beans ...,filterInvocationInterceptor"/>
</security:filter-chain-map>
</bean>
现在,我需要添加 CSRF 保护。我无法添加 http 和 csrf 标签,因为 http 正在复制手动配置。相反,我尝试在 Java 中配置它,但 Java 配置没有添加 CSRF 过滤器。
@EnableWebSecurity
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
...
}
我在应用程序上下文中声明了 bean <bean class="package.WebSecurityConfig"/>,但在创建应用程序上下文时从不调用 WebSecurityConfigurerAdapter.configure 方法。
如何在此处添加 CSRF 保护?是否也需要手动插入 CSRFFilter?
【问题讨论】:
标签: java spring-security csrf