Custom authorization attribute not working in WebAPI

前端 未结 4 654
没有蜡笔的小新
没有蜡笔的小新 2021-01-01 12:33
 public class CustomAuthorizeAttribute : AuthorizationFilterAttribute
 {  
    protected override bool AuthorizeCore(HttpContextBase httpContext)
    {
       return         


        
4条回答
  •  孤独总比滥情好
    2021-01-01 13:10

    1. Looks like you are using an MVC filter instead of a Web API filter. It can be detected in the sample because it uses HttpContextBase. Instead use the filter from the System.Web.Http.Filters namespace.
    2. You need to override OnAuthorization or OnAuthorizationAsync on the Web API filter.
    3. You don't need to register a global filter and decorate your controller with it. Registering it will make it run for all controllers.

    Web API filter code: https://github.com/aspnetwebstack/aspnetwebstack/blob/master/src/System.Web.Http/Filters/AuthorizationFilterAttribute.cs

提交回复
热议问题