我已经在different sites上使用了表单身份验证,甚至between different versions of .NET,但现在我们正在考虑在ASP.NET 5(MVC 6)ASP.NET Core中启动一个新项目,并希望在两者之间使用基于cookie的表单身份验证 . 登录在"old" MVC 5应用程序中完成 .
是否可以使用当前版本的ASP.NET 5来支持基于cookie的表单身份验证的某些跨应用程序配置?这可以在MVC6 ASP.NET Core端使用_2680985实现,还是可以用新的authentication middleware以某种方式播放?还有其他建议吗?
3 回答
这是我在Asp.net核心mvc中的简单代码,希望对大家有所帮助:
在
Startup.cs
在函数ConfigureServices
之后添加services.AddAuthorization();
service.AddMvc()
在函数
Configure
中添加这样的代码app.UseMvc....
之前在登录方法:核心代码如下:
然后您可以通过键值访问声明值或检查是否经过身份验证:
并检查如下:
在过去的几天里,我一直在为同样的问题敲打我的脑袋......但我已经解决了......(它似乎在坚持)
这是用于转换窗口和后来的窗体身份验证到窗体身份验证MVC5和MVC6所以希望你可以更改足够的代码使它适合你...我计划在重新编写登录脚本时更改一些部分 . (这是alpha所以会做出一些改变!)
我将以下代码放在我们的MVC5 Intranet站点中以获取Windows身份验证的角色
这将在窗体和MVC6方法中创建一个Windows身份验证票证 .
MVC6的字符串看起来像“John.Doe; Windows; Admin”
然后在MVC6启动文件中,我将以下代码放入configure部分......
然后,它将获取cookie并从中创建新的声明标识 . 我刚刚完成逻辑以使其正常工作所以我确定它可以整理...只是想我会得到它,所以你可以看看你是否可以得到一些想法 .
WebForms不是ASP.NET 5的一部分 . 根据这篇博客文章,这是#2的变化
Updated
ASP.NET MVC 6的新生命周期使用中间件来组合服务 . 您可以使用Security包进行身份验证,但不再支持旧的"Forms"身份验证 .