Chrome中缺少会话过期值,但在Firefox和IE中存在

时间:2018-12-31 10:12:47

标签: ruby azure-active-directory sinatra session-cookies

当用户登录会话cookie时,缺少到期值。因此,当会话开始时,它将立即结束。这仅发生在Chrome中,我正在使用最新版本的Chrome 71.035。

直到27日为止,它一直运行良好,并且在过去3周中,代码没有任何变化。
会话过期值存在于Firefox和IE中,并且在那可以正常使用。

以下是响应Cookie:

在Chrome中:
Set-Cookie: arkku.session_until=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 -0000; secure; HttpOnly; SameSite=Lax

Set-Cookie: arkku.session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiRWY1NWM4ZWE3OTQwNGY2OTRiYjQx%0ANGU0ZWRlZDQ2Mzc1ZWI4YjcxMDU2NzhiOWY2YzlkNzZmMGEzOThkM2QyMzcG%0AOwBG%0A--28332b90945ff110102d7869ab31458d3583798d; path=/; expires=Sun, 31 Mar 2019 08:43:10 -0000; secure; HttpOnly; SameSite=Lax

在Firefox中:
Set-Cookie: arkku.session_until=IjIwMTgtMTItMzFUMTI6MzQ6NTErMDI6MDAi--bde9eb54c68113310441353c9547b8a2d501835d; path=/; secure; HttpOnly; SameSite=Lax

Set-Cookie: arkku.session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiRTRlZmU3NjU4OWQzYTFiZmFmMmEz%0AYWFmZjA3ZTU1YzM3MzI3Yzc3YTJjYjI0YjBkNjBmNWM4NWQ1ZjgwMDk0MDIG%0AOwBGSSIPYXJra3VfdXNlcgY7AEZDOhdPbW5pQXV0aDo6QXV0aEhhc2h7CUki%0ADXByb3ZpZGVyBjsARkkiGWF6dXJlYWN0aXZlZGlyZWN0b3J5BjsARkkiCHVp%0AZAY7AEZJIjBWem9POFg3RmNEalp0M2s1ZDVlaExjejlybEtpejJCRmp1ZWdZ%0ASXVlMktvBjsAVEkiCWluZm8GOwBGQzohT21uaUF1dGg6OkF1dGhIYXNoOjpJ%0AbmZvSGFzaHsHSSIJbmFtZQY7AEZJIhFIYW16YSBXYWhlZWQGOwBUSSIKZW1h%0AaWwGOwBGSSIcaGFtemEud2FoZWVkQHNhbm9tYS5jb20GOwBUSSIPdXNlcmdy%0Ab3VwcwY7AEZDOwZ7BkkiDnVzZXJncm91cAY7AEZJIgpBRE1JTgY7AFQ%3D%0A--93133ef84469a8230c43d31950da38be7925bf27; path=/; expires=Sun, 31 Mar 2019 09:04:51 -0000; secure; HttpOnly; SameSite=Lax

如您所见,Chrome中的arkku.session_until值丢失了。

我注意到arkku.session_until值响应ajax请求而返回null,该cookie值出现在请求标头中。

1 个答案:

答案 0 :(得分:1)

这可能是由于将Chrome设置为“从上次停止的地方继续。”

enter image description here

在“设置”>“启动时”下进行检查,然后从上次中断的位置继续。

其他可能的原因:

  • 您的环境使用http端点,但在web.config中需要https

(Chrome52 +和Firefox52 +不再能够使用安全指令设置不安全的http网站,因此浏览器将忽略过期请求。)