You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman中Basic Auth请求返回403但浏览器可正常认证如何解决?

Spring Security Postman Basic Auth返回403问题排查方案

核心常见原因(占90%以上场景)

Spring Security默认开启CSRF跨站请求伪造防护,浏览器表单登录时会自动携带生成的CSRF Token完成校验,而Postman发送请求时默认不会携带该Token,因此POST、PUT、DELETE等非幂等请求会直接被拦截返回403。

修复方案

在HttpSecurity配置中关闭CSRF防护(面向API客户端的服务无需开启CSRF防护,CSRF仅针对浏览器会话类攻击场景有效),修改后的配置如下:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.csrf().disable() // 新增关闭CSRF的配置
            .authorizeRequests()
            .anyRequest().authenticated()
            .and()
            .httpBasic().authenticationEntryPoint(entryPoint);
}

其他可能原因及排查步骤

  • 检查Postman凭证配置:确认Basic Auth栏填写的用户名、密码无前后空格、大小写匹配,可自行将用户名:密码做Base64编码,和Postman自动生成的Authorization请求头Basic 后的值做对比,确认编码一致。
  • 检查请求属性:确认Postman发送的请求HTTP方法、路径和浏览器正常请求的属性完全一致,避免出现权限匹配不通过的问题。
  • 检查自定义entryPoint逻辑:确认你配置的entryPoint没有额外校验Origin、Referer等浏览器专属请求头,Postman默认不会携带这类头,可能被自定义逻辑拦截返回403。

内容的提问来源于stack exchange,提问作者obolen_an

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 17:36:06