设置原则.Identity.IsAuthenicated in Custom Authorization Filter

时间:2017-02-03 22:08:25

标签: .net asp.net-web-api authorization

在WebApi项目中,我有一个自定义的AuthorizationFilter属性,我在其中获取标头中传递的标记,并使用我们的SSO提供程序对其进行验证。

我想设置Principle.Identity.IsAuthenicated为true但我不能只读它。

如何创建一个自定义原则,其身份在我告知时已经过身份验证设置为true?

这就是我所拥有的:

 public class CustomAuthorize : AuthorizationFilterAttribute
{
   public override void OnAuthorization(HttpActionContext actionContext)
    {
        var token = ParseAuthorizationHeader(actionContext);

        if (token == null)
        {
            throw new HttpResponseException(HttpStatusCode.Unauthorized);
        }

        if (this.AuthorizeToken(token))  //this just validates the token with our SSO
        {
            // how would I set this?
            actionContext.RequestContext.Principal.Identity.IsAuthenticated 
        }



    }

0 个答案:

没有答案