-->

Asp.net窗体身份验证Cookie问题(Asp.net Forms Authentication

2019-10-20 06:08发布

我发布到Azure中临时服务器当运行到一个奇怪的问题。 在此部署我一直在使用SQL成员单个Web应用程序。 当我尝试通过我的登录页面登录我重定向到登录页面。 这是一个.NET 4.0的应用程序。

用Firebug的网络面板,我可以看到,当我按下回车键的形式发布和响应报头有我的身份验证票证一个Set-Cookie的属性。 它显示了两次。

.ASPXAUTHTEST=27D254F0AEEACB.........; domain=cloudapp.net; expires=Thu, 05-Jun-2014 05:29:24 GMT; path=/; HttpOnly

当窗体发布的Cookie设置,我在Firebug中看到,我重定向到我的默认网址。 当我打的默认网址的Cookie是不存在的,所以我立即注销。

这是我使用的配置。

<authentication mode="Forms">
      <forms cookieless="UseCookies" enableCrossAppRedirects="false" loginUrl="~/Default.aspx" name=".ASPXAUTHTEST" slidingExpiration="true"
        timeout="360" requireSSL="true" defaultUrl="~/Application/Index.aspx" protection="All" path="/" domain="cloudapp.net"/>
</authentication>

奇怪的是,我在生产相同的部署和它工作正常。 我曾试图再次重新部署整个实例(新的VM等)。 这并没有奏效。 我也尝试部署到新的操作系统版本的思想,但没有奏效。

我添加了一些日志代码,看看发生了什么,但它使我相同的结论作为萤火虫,cookie不会被浏览器设置。 这不是浏览器我已经尝试Chrome和IE以及相关。

近日笔者从Azure的SDK 1.6升级到2.1。

有没有人有什么建议?

Answer 1:

经过进一步研究,我相信原因可以归结为Mozilla的公共后缀列表,并使用它们来限制对某些域的Cookie的浏览器。 该网站的工作在IE和Safari。

当我改变:

domain="cloudapp.net"

domain="{guid}.cloudapp.net"

它适用于所有浏览器。

这 StackOverflow的反应概括它。

您也可以前往公共后缀列表的网站 。



文章来源: Asp.net Forms Authentication Cookie Issue