d-m*_*man 2 spring csrf spring-security csrf-protection
Java 8 - 弹簧 4.3.x
在配置 spring 安全性和启用 csrf 功能时,我遇到了两种实现,CsrfTokenRepository
一种是 Lazy,另一种是基于 Cokkie
我知道CookieCsrfTokenRepository
可以使用将 csrf 令牌写入 cookie 并在标头中接受 cookie 值来验证有效请求
有人可以帮助我了解它是如何LazyCsrfTokenRepository
工作的吗?
从javadoc:
一个
CsrfTokenRepository
是延误节能新CsrfToken
直至的属性CsrfToken
生成的访问的。
那为什么会这样呢?在 Spring Security 的早期版本中,这HttpSessionCsrfTokenRepository
是默认值。这样做的缺点是它总是创建一个令牌,触发会话创建,无论是否使用令牌,这在某些应用程序中可能是浪费的。
在LazyCsrfTokenRepository
另一方面仅创建一个包装,并创建仅当实际令牌getToken()
被调用(例如当生成表单等)。这避免了不必要的会话创建。
以A疑难杂症LazyCsrfTokenRepository
的是,HTTP响应之前的实际令牌生成,则仍必须承诺,否则,你会得到一个异常。如果您对此有疑问,最容易使用(仅)其他两种实现中的一种。
归档时间: |
|
查看次数: |
1014 次 |
最近记录: |