Spring安全性注销不会删除Cookie(JWT)

时间:2019-10-22 08:33:48

标签: spring authentication cookies spring-security jwt

我已经定义了以下注销机制(我正在使用JWT无状态身份验证)

<security:logout
                logout-url="/logout"
                delete-cookies="X-AUTH-TOKEN"
                invalidate-session="true"
                success-handler-ref="restLogoutSuccessHandler"/>

这是服务器对注销POST请求的响应

Set-Cookie: X-AUTH-TOKEN=null; expires=Thu, 01-Jan-1970 01:00:00 GMT; path=/foo/

但是,浏览器只剩下两个cookie,如下所示:

X-AUTH-TOKEN: null
X-AUTH-TOKEN: <the value before logout>

在以下请求中,浏览器(Chrome)仍会使用旧的有效JWT令牌,直到set-cookie标头发布了新的JWT或令牌过期为止。显然,这是有害的,因为注销不会处理有效令牌,并且会话保持活动状态。如何确保注销命令浏览器处置旧令牌?

0 个答案:

没有答案