[英]How to check user role in a resource server when using Thinktecture.IdentityServer.v3
我下载了[Thinktecture.IdentityServer.v3][1]
和相应的客户端项目。 我想检查SampleAspNetWebApi
项目中的用户角色。 所以我如下更改采样方法
[Authorize(Roles="Admin")]
public class IdentityController : ApiController
{
public dynamic Get()
{
var principal = User as ClaimsPrincipal;
return from c in principal.Identities.First().Claims
select new
{
c.Type,
c.Value
};
}
}
我使用WPF hybrid client
来调用服务,并使用具有Admin
角色的alice
用户。 但是它返回未经授权的错误。 用户已通过身份验证,但未设置角色。
如何检查SampleAspNetWebApi项目中的用户角色?
Authorize属性查找Microsoft / .NET特定角色声明类型
http://schemas.microsoft.com/ws/2008/06/identity/claims/role
我们发出一个简单的“角色”主张。
您可以将收到的声明映射到ASP.NET期望的内容-但已关闭-尝试从startup.cs删除此行:
JwtSecurityTokenHandler.InboundClaimTypeMap = ClaimMappings.None;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.