1
我正在开发具有Identity 2.0承载认证的ASP.NET Web API应用程序。我配置了承载认证并实现了SignIn方法,这样当我传递头时:Web API承载令牌认证授权不起作用
Authorization: Bearer uGjAWZA1nPc1AqPuKpAzPhb989SYbtGd...
工作正常。我可以拨打User.Identity.GetUserId()
或User.Identity.GetUserName()
。我甚至可以检查用户是否在某个角色中,并且它也很好。
什么是不工作,是[Authorize]
属性。当我指定角色,如[Authorize(Roles = "Admin")]
它返回:
{
Message: "Authorization has been denied for this request."
}
任何想法?
非常好!如果有一天管理员会改变用户的角色呢?在这种情况下,用户将不再是管理员,但他可以使用管理资源。如何处理这个? – Andrei 2014-09-24 12:16:05