有没有一种方法可以在禁用CSRF的同时保留Spring默认登录页面?

时间:2019-07-03 07:38:24

标签: angular spring spring-security

我正在使用Spring + Angular开发的网站上,默认登录页面对我来说很好。

问题是我需要禁用CRLF验证才能从Angular站点发送POST请求,所以我将其禁用。

现在默认的登录页面未显示,因此我不再具有授权验证。

有什么办法可以同时保留两者?

我尝试注释禁用它的代码行,并且似乎在添加WebSecurityConfigurerAdapter类时登录消失。

@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception{
        //http.cors().and().csrf().disable(); //Still doesn't work
    }

}

2 个答案:

答案 0 :(得分:0)

我认为您需要在此类中添加注释@Configuration。这有助于Spring知道您的配置安全性。

答案 1 :(得分:0)

我自己修复了问题,并在HttpSecurity中添加了一些内容

@Override
protected void configure(HttpSecurity http) throws Exception{
    http
            .cors().and().csrf().disable()
            .authorizeRequests().anyRequest().authenticated().and().formLogin().and().httpBasic(); //This fixed it
}