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

如何在Spring Boot中隐藏GET API接口防止公众通过浏览器直接访问

Spring Boot 敏感GET接口防公众访问解决方案

核心问题说明

CORS仅能限制浏览器跨域Ajax请求,对用户直接在地址栏输入接口地址、用接口调试工具构造请求的场景完全无效,因此无法实现接口保护。

最优解决方案:添加身份与权限校验

这是唯一可以从根本上解决问题的方案:

  • 引入Spring Security框架或自定义拦截器,给所有敏感接口添加请求拦截规则
  • 常用身份校验方案二选一即可:
    • 基于Session/Cookie:用户登录成功后,后端下发加密的身份Cookie,后续前端请求会自动携带,后端校验Cookie有效性,无效直接返回401状态码
    • 基于Token:用户登录成功后获取后端返回的JWT/自定义Token,后续请求将Token放在请求Header中携带,后端校验通过才允许访问
  • 针对https://my-api-url.com/employee/all这类高敏感接口,除了登录态校验外,额外增加权限校验逻辑,仅允许具备对应权限的登录用户访问,避免越权问题。

辅助优化方案(不可单独使用)

如果需要临时降低普通用户的误访问概率,可以搭配以下方案使用,注意不能替代授权逻辑:

  • 将敏感接口的请求方式从GET调整为POST,普通用户直接在地址栏输入地址无法正常发起请求,仅能防完全不懂技术的用户
  • 接口返回数据做最小化处理,仅返回前端必要的字段,避免多余敏感信息泄露。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 09:15:01