asp.net-mvc-4 – MVC 4.0 WebApi应用程序和混合身份验证

我正在询问是否可以为我的WebApi控制器服务提供AD身份验证和基本身份验证.我的目的是让所有内部(公司)用户使用AD凭据(窗口)进行身份验证以进行无缝登录,但是移动和外部(非公司)用户的基本身份验证.我正在寻找有关使用两者的信息,但不一定是使用两者的最佳方法.我不感兴趣的是在AD中添加外部用户. 最佳答案 您可以采用的方法是创建自定义操作筛选器并在全局注册它.

有点像

public class MixedAuthenticationAttribute : System.Web.Http.Filters.ActionFilterAttribute
{ 
    public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext     actionContext)
    {
           //basic auth header check
           if (actionContext.Request.Headers.Authorization == null)
           {
                 //no auth header run AD authentication process.
           } else {
                 //basic auth authentication
           }

    }
}
点赞