0

JAVA 8 + SPRING 5 + Junit -没有弹簧启动

我有以下弹簧配置的示例。如果有人关闭 csrf 配置测试失败,我想编写一个基本测试来测试配置。

默认情况下 csrf 是启用的,这就是你看不到任何 csrf 配置的原因。

提前感谢任何帮助。

@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true)
public class WebMVCSecurity extends WebSecurityConfigurerAdapter {

    @Bean
    @Override
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.inMemoryAuthentication()
          .withUser("user1").password("{noop}user1Pass")
          .authorities("ROLE_USER");
    }

    @Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring().antMatchers("/resources/**");
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
          .authorizeRequests()
          .anyRequest()
          .authenticated()
          .and()
          .httpBasic();
    }
}
4

1 回答 1

0

所有 spring 安全配置最终都转换为 FilterChainProxy 对象,您可以自动连接然后遍历过滤器,如果启用 csrf,则查找 CsrfFilter 类。

于 2020-03-05T20:46:35.047 回答