描述了如何使用[Authorize]属性将对控制器和操作的访问限制为经过身份验证或授权的用户。身份验证是通过设置Thread.CurrentPrincipal来完成的,它允许访问受限的控制器/操作,前提是用户具有任何所需的角色。在遵循此方法时,是否需要为每个请求设置Thread.CurrentPrincipal (例如,在消息处理程序中),或者Web API是否有某种方式在请求之间维护该主体?(据我所知,Web AP
我使用的是ASP.NET Web API2,我有一个BaseController类,所有其他控制器都是从这个类派生的。我在这个控制器中有以下方法:{
// Get the id of the logged in user.这就是为什么我需要检查数据库中是否存在具有给定GlobalUserId的用户实体。否则,我应该返回401 / Unauthorized,因为未经授
我有一个MVC Web Api Controller,它在类级别使用Authorize属性。这使得所有的api方法都需要授权,但是我想创建一个名为ApiPublic的属性来覆盖Authorize属性。对于普通的MVC控制器,也有类似的技术描述。我尝试创建一个基于System.Web.Http.AuthorizeAttribute的AuthorizeAttribute,但如果我将它放在一个在类级别具有Autho