Spring CSRF 令牌生命周期
Posted
技术标签:
【中文标题】Spring CSRF 令牌生命周期【英文标题】:Spring CSRF token life 【发布时间】:2015-01-08 02:21:46 【问题描述】:我正在根据doc 使用 Spring 安全性实现 CSRF 保护
我的一个问题是:这个令牌什么时候会被 Spring 安全性失效? 每次提交请求时令牌都会失效吗?
【问题讨论】:
【参考方案1】:默认情况下,CSRF 令牌存储在 HTTP 会话中,并在每个会话的基础上生成。有关详细信息,请参阅the official Spring Security documentation。因此,CSRF 令牌的默认生命周期是会话持续时间。
与 Spring Security 中的其他所有内容一样,CSRF 令牌的存储和检索可以自定义以满足个人需求。这样做的方法是为CsrfTokenRepository
创建一个实现。自定义实现可以根据每个请求更改令牌,将令牌存储在关系数据库中,等等。
【讨论】:
谢谢。由于 CSRF 令牌的默认生命周期是会话,在此活动会话期间,CSRF 攻击者链接可以攻击我的网站,对吗? [我的意思是,如果我在会话处于活动状态时单击攻击者链接] 不,那是 CSRF 保护的场景。如果您在重要网站上的活动会话期间碰巧访问了恶意网站,则该恶意网站无法成功向该重要网站提交请求。这是因为攻击者没有会话的 CSRF 令牌,因此伪造的请求将被拒绝。以上是关于Spring CSRF 令牌生命周期的主要内容,如果未能解决你的问题,请参考以下文章