title: When `PostAuthenticateRequest` gets execute?
body: <p>This is my <code>Global.asax.cs</code> file:</p>
  
  <pre><code>public class MvcApplication : System.Web.HttpApplication
  {
      public static void RegisterRoutes(RouteCollection routes)
      {
          ...
      }
  
      protected void Application_Start()
      {
          this.PostAuthenticateRequest += new EventHandler(MvcApplication_PostAuthenticateRequest);
      }
  
      // This method never called by requests...
      protected void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e)
      {
          HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];
  
          if (authCookie != null)
          {
              FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value);
              var identity = new GenericIdentity(authTicket.Name, "Forms");
              var principal = new GenericPrincipal(identity, new string[] { });
              Context.User = principal;
          }
      }
  }
  </code></pre>
  
  <p>When <code>PostAuthenticateRequest</code> gets execute?</p>