ASP.NET MVC 5不带表单身份验证的单一登录模式
本文关键字:身份验证 单一 登录模式 表单 NET MVC ASP | 更新日期: 2023-09-27 17:59:23
我正试图在多个域上为我的web应用程序实现单一登录模式。我正要使用表单验证,但我遇到了这个:
https://softwareengineering.stackexchange.com/questions/284380/is-formsauthentication-obsolete
如果它已经过时,推荐的替代解决方案是什么?我有类似的域:
- account.domain.com(用户将使用此登录)
- app1.domain.com
- app2.domain.com
- app3.domain.com
另外,表单身份验证面临的主要问题是用户身份。我有一个自定义的用户对象,它有很多属性。每次从会话中存储和检索对象都很痛苦。我怎样才能克服这个困难?
您可以将ASP.Net标识与声明一起使用您不需要使用ASP.Net模板附带的整个ASP.Net标识
[assembly: OwinStartup(typeof(YOUR_APP.Startup))]
namespace YOUR_APP
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "ApplicationCookie",
LoginPath = new PathString("/Account/Login"),
CookieDomain = ".domain.com",
});
}
}
}
您可以在面向ASP.NET开发人员的OWIN cookie身份验证中间件入门中阅读更多关于如何附加声明的内容。
仅供参考:确保在所有web.config文件中设置相同的机器密钥,以便在站点之间共享cookie