Firefox不允许我使用FormsAuthentication设置持久性Cookie

get*_*ode 3 asp.net cookies firefox forms-authentication

我有验证登录表单(带有“记住我”的选项)并验证用户身份(如果有效)的代码。然后,我设置表单身份验证cookie并重定向。

auth cookie设置如下,persistent参数是true用户是否选择了“记住我”。

FormsAuthentication.SetAuthCookie(response.UserObject.UserName, persistent);
Response.Redirect(url);
Run Code Online (Sandbox Code Playgroud)

我们已经在各种浏览器中对此进行了测试,并且总体来说还不错。但是,在Firefox中,.ASPXFORMSAUTHcookie始终是会话cookie,即使关闭了persistent以上参数,该cookie也会在关闭浏览器时过期true

我正在测试的Firefox版本是55.0.3(32位)。这是一个已知的错误?还是有其他原因导致Firefox不允许我设置持久性Cookie?难道它不再接受永久性cookie作为302重定向响应的一部分吗?

get*_*ode 5

感谢@ gabriel-luci的指针,我找到了解决方案。在Firefox偏好设置(about:preferences#privacy)中,我的浏览器已设置为使用“历史记录”的自定义设置,并配置为仅在关闭Firefox之前保留cookie。我不记得自己更改此设置,但与同事进行的检查表明,默认设置是保留cookie直到它们过期。因此,如果遇到相同的问题,请从Firefox偏好设置开始。