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

前端之家收集整理的这篇文章主要介绍了asp.net’记住我’不再使用表单身份验证了前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有两个自编书籍成员资格提供者的网站,这些网站是在不同的Web应用程序和不同的应用程序池中的同一Web上的同一服务器上的hostet.

以前我遇到了问题,我无法一起登录这两个网站.感谢Remy的post,现在,我必须将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>

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

还有其他我需要添加内容,以便记住我的功能有效吗?

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

更新1
感谢Jason Kealey解决这个问题.我永远都找不到它.
与此同时,我在msdn中找到了相应的信息.在
How To: Configure MachineKey in ASP.NET 2.0
在“Web Farm部署注意事项”部分中写道:

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

解决方法

问题可能是您每次启动工作进程时都会自动生成验证密钥. 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

原文链接:https://www.f2er.com/aspnet/248923.html

猜你在找的asp.Net相关文章