我创建了一个全新的Web应用程序,说"WebApplication1" - 将身份验证设置为个人用户帐户的WebForms.我没有向自动生成的代码模板添加一行代码.我运行应用程序并注册用户"User1"并登录 - 工作正常.
现在我创建另一个Web应用程序"WebApplication2" - 将身份验证设置为单个用户帐户的相同WebForms.再次没有代码,我运行应用程序.现在我创建另一个用户说"User2" - 工作正常.
当两个应用程序同时运行时,问题就开始了.如果我以"User1"身份登录到第一个站点,那么当它甚至没有注册"User1"时,它会自动将第二个站点的Context.User.Identity从"webApplication2"设置为"User1",反之亦然从一个站点出来,另一个站点退出.
如何共享Context.User.Identity?
代码是一样的 -
public static void SignIn(UserManager manager, ApplicationUser user, bool isPersistent){
IAuthenticationManager authenticationManager = HttpContext.Current.GetOwinContext().Authentication;
authenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie);
var identity = manager.CreateIdentity(user, DefaultAuthenticationTypes.ApplicationCookie);
authenticationManager.SignIn(new AuthenticationProperties() { IsPersistent = isPersistent }, identity);
}
Run Code Online (Sandbox Code Playgroud)
我肯定错过了一些关于ASP.Net Identity如何工作的基本知识,所以请帮助我.
提前致谢.
参考最近在保留实例上为Azure网站提供的自定义SSL配置 - 如何实施256位加密?我所看到的只是使用RC4_128的128位.我想确保用户使用AES_256使用256位加密进行连接.
提供的链接没有任何输入 - http://www.windowsazure.com/en-us/develop/net/common-tasks/enable-ssl-web-site/