小编Yos*_*Kim的帖子

自定义身份验证筛选器(实现IAuthenticationFilter)未触发

我有一个ASP MVC 5应用程序,我无法使自定义身份验证筛选器工作.

我在"CustomFilters"文件夹中创建了一个自定义身份验证过滤器,如下所示:

public class CustomBasicAuthAttribute : ActionFilterAttribute, IAuthenticationFilter
{

    public void OnAuthentication(AuthenticationContext context)
    {
        // does not fire... :(
    }

    public void OnAuthenticationChallenge(AuthenticationChallengeContext context)
    {
        // does not fire... :(
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的ProductController中,我装饰了以下方法之一:

public class ProductsController : ApiController
{

    [CustomBasicAuth]
    [HttpGet]
    [Route("clients/{id}/products")]
    public IEnumerable<Products> GetByClientId(int id)
    {

        return new List<Products>();
    }
Run Code Online (Sandbox Code Playgroud)

但是,出于某种原因,CustomBasicAuth类中的OnAuthentication方法永远不会触发.我试图装饰整个控制器,并尝试全局加载它,但没有一个工作.

我阅读并关注了大量有关此问题的在线文章,看起来这应该可行.

任何帮助将不胜感激.

asp.net-mvc basic-authentication asp.net-mvc-5

1
推荐指数
1
解决办法
1604
查看次数