gpt4 book ai didi

java - 使用 Spring Security 后 $http 请求给出 403?

转载 作者:行者123 更新时间:2023-12-02 02:03:38 24 4
gpt4 key购买 nike

下面是我正在使用的 SecurityConfiguration 类。

@SpringBootApplication
@RestController
public class WebMvcConfig {
@Configuration
protected static class SecurityConfiguration extends
WebSecurityConfigurerAdapter {

@Override
protected void configure(HttpSecurity http) throws Exception {


http.authorizeRequests()
.antMatchers("/login").permitAll()
.antMatchers("/**").authenticated()
.anyRequest().authenticated()
.and()
.formLogin().permitAll();
}
}

启动后,只要我点击我的 URL ( http://localhost:8080/TestApp/ ),它就会带我进入默认登录页面,当我输入默认用户 ID(用户)和密码(打印在控制台上)时,它会带我通过我的 AngularJS 路由到由“/” URL 映射的我的 index.html 页面。我可以在 UI 中导航,但是一旦我提交任何 $http 请求(我正在尝试使用 POST 请求),它就会在浏览器控制台上显示 403 以及我的 $http 请求 URL。

有人可以帮忙吗?

最佳答案

错误403表示您被禁止访问所有资源。

如果您检查错误详细信息,您很可能会收到一条消息,例如未找到预期的 CSRF token

从 v4 开始,spring security 默认启用 csrf 保护。这是一个很好的做法,因为 csrf 攻击会迫使最终用户在他们当前经过身份验证的 Web 应用程序上执行不需要的操作。

因此在开发环境中,添加 http.csrf().disable(); 将解决您的问题。但是,当您想要转移到产品环境时,您应该考虑添加 csrf token 。

关于java - 使用 Spring Security 后 $http 请求给出 403?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51186163/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com