除了关闭cookie之外,什么可能导致ASP.NET FormsAuthentication Cookie问题?

cod*_*ike 6 asp.net cookies formsauthentication

人们报告无法登录我们的某个ASP.NET站点.当我检查IIS日志时,看起来它们的浏览器在登录后没有缓存FormsAuthentication cookie.

我认为它不像'用户将浏览器设置为不接受cookie'那样简单,因为:
a)如果一般的cookie不能用于他们的浏览器,他们就不会有他们在这个过程中所拥有的程度 - 例如,ASP.NET会话cookie似乎工作正常.
b)这些通常不是那种甚至不知道如何关闭cookie的用户.

所以我认为它必须是别的东西.除了用户只是将浏览器设置为拒绝cookie 之外,哪些问题会导致ASP.NET FormsAuthentication cookie停止工作?

编辑:例如,对另一个问题的回答表明,有时FormsAuthentication Cookies因为太大而被丢弃 - 也许有人可以对此有所了解?

编辑:我们的一个站点的FormsAuthentication cookie是233个字节 - 有点大吗?可以缩小吗?也许这会有所帮助.

编辑:我注意到代码使用FormsAuthentication.SetAuthCookie()Response.Redirect()不是FormsAuthentication.RedirectFromLoginPage()- 可能是相关的吗?

mik*_*nne 2

用户是否有可能通过 2 个不同的域访问您的网络服务器?例如,如果我访问 www.foo.com 并获取身份验证 cookie,然后重定向到 www.bar.com,则发送到 www.bar.com 的请求肯定不会包含 www.foo.com 设置的 cookie 。

如果您在 htp://login.foo.com 设置 cookie,然后重定向到 htp://content.foo.com,也会出现此问题。不过,我相信可以使用通配符配置 cookie,以便将其应用于 *.foo.com。

编辑:故意拼写错误“http”,以便此答案中没有实际可点击的垃圾链接。:)