gpt4 book ai didi

java - Spring 安全中每个请求的不同 csrf token

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:16:32 25 4
gpt4 key购买 nike

我正在使用 <csrf/>在我的 spring security xml 文件中标记一个 web 项目。并以一种形式发送 csrf token :

<form action="" method="post">
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
</form>

但是在通过 BurpSuite 拦截请求时,我在每个请求上获得相同的 csrf token ,直到 session 持续存在。

在 spring security 中,有什么方法可以让每个请求发送与每个 session 不同的 csrf token 。

我正在使用 3.2.4 spring 安全 jar 。

最佳答案

CSRF token 的默认持续时间是 session 持续时间。 CSRF token 存储在 HTTP session 中,因此是在每个 session 的基础上生成的。检查Spring Security documentation on CSRF了解更多详情。

Spring Security 可以扩展以满足个人需求,因此可以根据您的目的进行扩展。

但是,这个扩展会影响可用性:

  1. 在第二个选项卡中打开网络应用程序会导致一个或两个选项卡中的 session 中断。
  2. 提交表单上的“后退”按钮可能会导致一些奇怪的错误。

关于java - Spring 安全中每个请求的不同 csrf token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35844534/

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