我想在两个网站之间共享身份验证,因为我慢慢地从旧网站重写功能并转换到新网站。我在这里找到了答案:Sharing Authentication between ASP.NET sites
问题是,当我设置域属性时,身份验证cookie将停止工作。用户仍然成功进行身份验证,并且cookie似乎已创建并正确设置...但是当加载站点时,用户被强制进入登录屏幕。
我正在使用标准的MVC生成的身份验证代码,只要未设置域,该代码就可以正常工作:
public void SignIn(string userName, bool createPersistentCookie)
{
if (String.IsNullOrEmpty(userName)) throw new ArgumentException("Value cannot be null or empty.", "userName");
FormsAuthentication.SetAuthCookie(userName, createPersistentCookie);
}
如果我调试并查看FormsAuthentication对象,它看起来像域,其他一切都设置正确。
那么可能导致这种情况,我该如何解决?