[我正在尝试在我的Spring Boot API中实现CSRF令牌安全性,以了解如何处理。
我关注了this tutorial (server side part),这是我的安全配置:
private static final String[] CSRF_IGNORE = {"/api/login"};
protected void configure(HttpSecurity http) throws Exception {
http
.csrf()
.ignoringAntMatchers(CSRF_IGNORE)
.csrfTokenRepository(csrfTokenRepository())
.and()
.addFilterAfter(new CustomCsrfFilter(), CsrfFilter.class)
.exceptionHandling()
.authenticationEntryPoint(new Http403ForbiddenEntryPoint() {
})
.and()
.authenticationProvider(getProvider())
.formLogin()
.loginProcessingUrl("/api/login")
.successHandler(new AuthentificationLoginSuccessHandler())
.failureHandler(new SimpleUrlAuthenticationFailureHandler())
.and()
.logout()
.logoutUrl("/api/logout")
.logoutSuccessHandler(new AuthentificationLogoutSuccessHandler())
.invalidateHttpSession(true)
.and()
.authorizeRequests()
.anyRequest().authenticated();
}
其他与本教程中的相同。
我正在与邮递员进行测试。
当我在[[CSRF_IGNORE中添加所需的端点时,通过记录器/调试,我可以看到库存的令牌和cookie中的令牌是相同的,因为安全配置的<< CustomCsrfFilter.java]部分在使用.addFilterAfter(),但是当我从此CSRF_IGNORE中删除端点时,得到的是403,并且未使用CustomCsrfFilter.java中的记录器/调试,所以我在想不比较令牌。我想我错过了一些东西,我想了解。
我正在尝试在Spring Boot API中实现CSRF令牌安全性,以了解如何处理。我遵循了本教程(服务器端部分),这是我的安全配置:private static final ...