title: Custom roles on an Authorize attribute in MVC4
body: <p>Here is my code:</p>
  
  <pre><code>[HttpGet, Authorize(Roles = "Admin")]
  public ActionResult ActivityLog()
  {
    'code to do stuff
  
    return View(model);
  }
  </code></pre>
  
  <p>It's pretty simple - if you are in the "Admin" role you can get into this action.  However I have a custom ActionFilter that populates my IPrinciple with all the custom claims (I cant use ADFS to send the claims because I have ONE ADFS for multiple sites so my claims have to be for that specific site).</p>
  
  <pre><code>public class CustomFilter: ActionFilterAttribute
  {
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
      if (filterContext.HttpContext.User.Identity.IsAuthenticated)
      {
        'go get custom claims
      }
    }
  }
  </code></pre>
  
  <p>I tie the custom filter into the application from the Global.asax file</p>
  
  <pre><code>public static void RegisterGlobalFilters(GlobalFilterCollection filters)
  {
    filters.Add(new CustomFilter());
  }
  </code></pre>
  
  <p>The problem is since the Authorize attribute runs before my custom filter I don't have the 
  "Admin" role and i get a 401 - Unauthorized Access error.  How do I still keep the filter AND use the "Roles" tag in the Authorize attribute?</p>