当前位置: 首页 > 知识库问答 >
问题:

Spring Security-GET请求上的CSRF令牌

鲜于温书
2023-03-14

我在Spring5(Boot2)RESTful web服务中配置了CSRF保护,因为我希望防止CSRF攻击(我使用jwtcookie进行身份验证和授权)。在每个请求中,我都会得到一个新的XSRFcookie。我通过x-csrf-token标头发回的cookie的值。

我注意到postputdelete方法需要此标记的值(在x-csrf-token标头中)才能正常工作,但是get方法没有x-csrf-token标头也可以正常工作。

这种行为是故意的,因为get方法不应该改变状态,还是我做错了什么?

共有1个答案

曾嘉祯
2023-03-14

为了避免令牌泄漏到第三方,有意将CSRF令牌排除在GET之外

 类似资料:
  • 我遇到了CodeIgniter/CSRF/JSON的问题。 我正在向PHP后端发送内容类型为“application/json”的http POST请求。有效负载是json数据。我将与数据一起传递生成并存储在CSRF cookie中的CSRF令牌。对于标准POST表单请求,它工作正常,但作为json发送时失败。 由于$\u POST数组因JSON内容类型而为空,CodeIgniter无法验证coo

  • 概述 我将使用API网关作为基于Spring Security性的身份验证。我刚刚按照https://spring.io/guides/tutorials/spring-security-and-angular-js/链接中的步骤创建了一个基于其对应的github项目的“对双”模块的项目https://github.com/spring-guides/tut-spring-security-and

  • 我试图发送一个GET请求,传递一个身份验证令牌头以获取一些JSON数据,但是我得到了所有的java.lang.NullPointerExceptions。我已经尝试使用JSONObjectRequest、JSONArrayRequest甚至StringRequest。 下面是代码(JSONObjectRequest和JSONArrayRequest对测试进行了注释): 我可能找到了有用的东西。我移

  • 配置Spring Security 3.2后,csrf。令牌未绑定到请求或会话对象。 这是Spring Security配置: login.jsp文件 它呈现下一个html: 结果是403 HTTP状态: 在一些调试之后更新,请求对象以良好的形式发出DelegatingFilterProxy,但在CoyoteAdapter的469行中,它执行请求。回收();这会删除所有属性。。。 我使用JDK 1

  • 问题内容: 因此,我四处阅读,对于拥有CSRF令牌感到非常困惑,但是我应该为每个请求还是每小时生成一个新令牌? 但是,我们最好每小时生成一个令牌,然后我需要两个会话:令牌,到期, 我将如何处理该表格?只需将echo $ _SESSION [‘token’]放在隐藏值表单上,然后在提交时进行比较? 问题答案: 如果您按照表单请求进行操作-那么基本上就可以消除CSRF攻击的发生,并且可以解决另一个常见

  • 我正在尝试通过Ajax从数据库中删除数据。 HTML: 我的ajax代码: 这是我要从数据库中提取数据的查询... 但当我单击“删除链接数据未删除”并显示csrf_token不匹配时...