asp.net'记住我'不再使用表单身份验证了

HCL*_*HCL 8 asp.net forms-authentication asp.net-membership

我有两个自编书籍成员资格提供商的网站,这些网站是在不同网络应用程序和不同应用程序池中的同一Web上的同一服务器上的.

以前我遇到了问题,我无法一起登录这两个网站.感谢Remy的帖子,现在可以使用,我必须将name-attribute 添加到forms元素中.
但是现在我遇到了asp登录控件的remember-me选项停止工作的问题.正常会话超时后,用户将注销.

web.config文件中的authentication-attributes如下所示:

<authentication mode="Forms" >
  <forms loginUrl="~/UserMgmt/Login.aspx" timeout="400000" slidingExpiration="true" name="NameOfTheSite"/>
</authentication>
Run Code Online (Sandbox Code Playgroud)

我还将表单认证的cookie名称设置为不同的名称.

还有什么我需要添加的东西,以便记住我的功能有效吗?

更新
我观察到如果我禁用表单身份验证cookie的加密和验证,问题就消失了.如果我激活加密,验证或同时激活,则会出现新问题.
我也知道,它独立于会话cookie名称(它们甚至可能是相同的).也许这些信息可以帮助别人弄清楚发生了什么?

更新1
感谢Jason Kealey解决此问题.我永远都找不到它.与此同时,我在msdn中找到了相应的信息.在 如何:在 "Web场部署注意事项"部分中编写ASP.NET 2.0中的MachineKey:

如果要将应用程序与同一服务器上的其他应用程序隔离,请<machineKey>将该文件放在服务器场中每台服务器上的每个应用程序的Web.config文件中.确保为每个应用程序使用单独的键值,但在服务器场中的所有服务器上复制每个应用程序的键.

Jas*_*ley 9

问题可能是您每次启动工作进程时都会自动生成验证密钥.Cookie已加密,但是当您返回时,会使用新的服务器端密钥,因此您的cookie无法解密.

查看machineKey部分 http://msdn.microsoft.com/en-us/library/ff649308.aspx

以下是为您生成machineKey部分的内容 http://www.qualitydata.com/products/aspnet-membership/help/configuration/no-machinekey.aspx