20得票2回答
ClaimTypes的ASP.NET要求

我正在研究在ASP.NET(MVC Core 1.0)中使用基于声明的授权。当设置ClaimsIdentity时,我提供了一个键/值字符串对列表来表示每个Claim。例如: List<Claim> claims = new List<Claim> { new ...

20得票4回答
理解Claims

我试图学习OpenId Connect、OAuth2.0、安全令牌服务和声明。想象一下,有一个功能丰富的大型网站,包含许多区域和不同的功能,例如:客户、订单、供应商、交付、退货等。我的问题是这样的 - 我是否应该在令牌服务器上创建声明(claims),例如CanCreateCustomer、C...

20得票2回答
简单的声明转换和缓存与Windows身份验证

最近几天我一直在阅读关于Windows身份基础结构的内容,了解它有多么好、多么灵活,并且已经内置在.net 4.5中。尽管查阅了数十个API、博客文章和教程等,但是我始终无法让一个简单的实现工作起来。 我仅使用Windows身份验证并且可以获取主体和查看其中包含的声明(这似乎是每个示例结束的...

19得票4回答
无法使用ASP.NET Core从JWT令牌获取声明

我试图在ASP.NET Core中实现JWT承载身份验证的简单方法。我从控制器返回一个响应,就像这样: var identity = new ClaimsIdentity(); identity.AddClaim(new Claim(ClaimTypes.Name, applic...

18得票5回答
使用async/await设置Thread.CurrentPrincipal

以下是我试图在异步方法中将Thread.CurrentPrincipal设置为一个自定义的UserPrincipal对象的简化版本,但是即使它仍然在新的线程ID 10上,但在离开await后自定义对象会丢失。 有没有一种方法可以在等待中更改Thread.CurrentPrincipal并在稍...

18得票2回答
如何在MVC 5中为OwinContext设置超时时间

当用户访问一个网站并输入他们在我们数据库中存储的凭据时,我们会创建一个身份验证。 你如何设置超时时间?使用 MVC 5。 我的身份验证看起来像这样: var claims = new List<Claim>(); claims.Add(new Cl...

17得票6回答
使用MVC 5 OWIN登录,需要Claims和AntiforgeryToken吗?我是否缺少一个ClaimsIdentity提供程序?

我正在尝试学习MVC 5 OWIN登录的声明。我尽可能简单地保持它。我从MVC模板开始,并插入了我的声明代码(见下文)。当我在视图中使用@Html.AntiForgeryToken()助手时,我会收到错误消息。 错误:A claim of type 'http://schemas.xmlso...

17得票5回答
如何从Azure B2C中获取ASPCore的OID声明

为什么我要这样做? 我正在尝试从我的用户那里获得一个唯一标识符,以便我可以将其连接到数据库记录。有些原因使我不想使用电子邮件作为标识符。我阅读了SUB声明在B2C中不受支持,所以要用OID替代。 我已经采取的步骤 所以,我已经设置了我的两个策略在Azure B2C上返回对象ID: ...

17得票1回答
使用X509Certificate2(JwtSecurityTokenHandler)保护JWT

我成功让JwtSecurityTokenHandler与X509Certificate2配合工作。我能够使用X509Certificate2对象签署令牌,也能够通过使用证书的原始数据(X509Certificate2.RawData)属性来验证令牌。 以下是代码:class Program ...

17得票2回答
使用扩展的MVC Core Identity用户实现自定义声明

如何在MVC Core 2.0中创建自定义授权声明 (使用AspNetCore.identity) 来验证自定用户布尔属性?我已扩展 IdentityUser (ApplicationUser) 以包括布尔值 "IsDeveloper"。我正在使用基于声明的身份验证,并希望添加自定义声明,但不...