asp.net-mvc – OWIN使用相同的MachineKey在ASP.NET MVC和Webfor
我有一个遗留的webforms应用程序,正在构建一个新的MVC版本来取代它.两者都需要并排运行一段时间,我需要单点登录才能工作.以前,用户通过webforms应用程序登录,我成功地设置了表单身份验证,以便MVC应用程序可以通过cookie进行身份验证.
现在,新的登录表单已在MVC应用程序中完成,现在需要用户从这些表单登录. MVC应用程序使用Identity 2.x和OWIN.我最初尝试配置OWIN cookie以匹配旧版webforms应用程序中的设置,但无法让webforms应用程序读取cookie并验证用户身份. 从那时起,我决定将Indentity 2.x和OWIN安装到webforms应用程序中.我已将设置设置为相同.到期时间为30分钟,域名为“”,路径为“/”.我可以看到从MVC应用程序生成的cookie,但它没有被webforms应用程序选中.我一直收到拒绝访问的消息. app.UseCookieAuthentication(new CookieAuthenticationOptions { AuthenticationMode = Microsoft.Owin.Security.AuthenticationMode.Active,AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,CookieName = Settings.Default.CookieName,CookiePath = Settings.Default.CookiePath,CookieDomain = Settings.Default.CookieDomain,LoginPath = new PathString(Settings.Default.CookieLoginPath),ReturnUrlParameter = Settings.Default.CookieReturnUrl,ExpireTimeSpan = Settings.Default.CookieExpireTimeSpan,SlidingExpiration = Settings.Default.CookieSlidingExpiration,Provider = new CookieAuthenticationProvider { OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager,ApplicationUser>( validateInterval: TimeSpan.FromMinutes(30),regenerateIdentity: (manager,user) => user.GenerateUserIdentityAsync(manager)) } }); 我已经将机器密钥设置(以前用于表单身份验证)保持不变.但我删除了两个配置文件中的表单身份验证. 我是否错误配置了某些内容,或者是否需要更多配置才能在具有相同机器密钥的应用程序之间共享OWIN cookie? UPDATE >使用个人用户帐户创建了一个新的webforms应用程序. 新的webforms应用程序列出了cookie但仍未对用户进行身份验证. UPDATE 解决方法
在创建了两个新的应用程序并使其工作之后我开始使用基线并从那里开始向后工作,直到我实现了应用程序之间单点登录的目标.我发现了很多东西,包括
> app for之间的单点登录不需要MachineKey 所以最后我确实需要将Identity 2.x和OWIN添加到我的遗留webforms应用程序中,基本上升级到4.5中的新身份验证管道以使其工作. 希望这篇文章能帮助节省一些宝贵的时间和精力. 重要更新: <machineKey decryptionKey="AutoGenerate" validationKey="AutoGenerate" /> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 指向同一页面的动作链接
- asp.net-mvc – 用于多个复选框表单的ASP.Net MV
- asp.net创建helloWord
- asp.net-mvc-3 – 用于ASP的Telerik扩展. NET MV
- 在ASP.NET中使用JQuery选择ID属性
- asp.net-mvc – .net Mvc 3 Ajax.BeginForm,获取
- asp.net-mvc-4 – Asp.net数据库迁移,什么是Down
- Asp.Net MVC动态模型绑定前缀
- ASP.NET web.config:system.web.compilation中的
- asp.net – 从WebMethod访问函数背后的代码