使用ASP.NET Identity 2.0和MVC 5的自定义单点登录

N1njaB0b

我正在用Identity 2.0在MVC 5中重写我的MVC 4表单身份验证应用程序。

当前,该站点使用专有的单点登录方法,该方法对POST请求中的传入参数进行解密,并根据内容的有效性使用FormsAuthentication.SetAuthCookie设置身份验证Cookie并将用户重定向到安全的内容。

现在,我正在使用ASP.Net Identity,那么FormsAuthentication.SetAuthCookie功能的合适替代品是什么?请记住,我不想将这些用户中的任何一个持久化到数据库中。它们应该只存在于令牌/ cookie中。

N1njaB0b

得到它了!我在这篇有用的文章中找到了解决方案

基本上,您创建一个ClaimsIdentity,然后使用OWINContext中的AuthenticationManager来“登录”身份并创建身份验证cookie。

像这样:

var claims = new List<Claim>();
claims.Add(new Claim(ClaimTypes.Name, "Brock"));
claims.Add(new Claim(ClaimTypes.Email, "[email protected]"));
var id = new ClaimsIdentity(claims,DefaultAuthenticationTypes.ApplicationCookie);

var ctx = Request.GetOwinContext();
var authenticationManager = ctx.Authentication;
authenticationManager.SignIn(id);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用自定义角色在ASP.NET Identity中初始化RoleManager

基于用户角色的ASP.NET MVC 5 Identity 2登录重定向

如何自定义Asp.net Identity 2用户名已采取的验证消息?

如何在ASP.NET MVC Identity 2中使用事务?

使用ASP.NET MVC Identity 2.0播种和登录默认用户的适当位置在哪里?

ASP.NET Identity 2电子邮件和用户名的分隔,并使用电子邮件登录

Asp.net Identity 2.0自定义登录方法

ASP.NET MVC 5 Identity 2 PasswordSignInAsync方法始终返回false

使用自定义Facebook和Google按钮的ASP.NET Identity登录

ASP.Net Identity 2-来自OAuthAuthorizationServerProvider的自定义响应

如何使用IdentityServer4和ASP.NET Microsoft Identity进行自定义密码验证

如何使用Firebase和自定义服务器实施长期单点登录?

ASP.NET Identity与自定义实现,使用哪个?

Asp.net Identity 2.0使用自定义唯一属性扩展UserValidator

已验证ASP.NET Identity中的自定义登录规则,但浏览器仍重定向到“主页”

自定义MVC5 ASP.NET Identity中的cookie值

使用ASP.NET MVC 5身份进行单点登录

使用mod_auth_cas和自定义登录单点登录

如何使用ASP-5 / MVC-6 / Identity 3为自定义Asp.Net身份存储提供程序注册中间件

ASP.NET Identity2和DataContext注入

在ASP.NET MVC 5中使用Identity框架登录弹出窗口

如何使用AngularJS和MVC5(ASP.NET Identity)加载部分登录和注册视图

使用ASP.NET Identity 3的自定义密码策略

在ASP.NET MVC5中使用自定义登录进行表单身份验证

在MVC 5中的ASP.NET Identity 3上管理自定义用户属性

使用自定义 List<property> 扩展 ASP .NET Identity 并在视图中访问它

C# ASP.NET Identity 2 (.NET Framework MVC) - 使用权限和角色

使用 Google 登录的 ASP.NET Identity 2...注销不起作用

ASP .NET Core Identity 自定义 ApiAuthorizationDbContext