private void ApplicationAuthenticateRequest(object sender, EventArgs e) { var _application = HttpContext.Current.ApplicationInstance; var formsCookie = _application.Request.Cookies[FormsAuthentication.FormsCookieName]; if (formsCookie != null) { FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(formsCookie.Value); JavaScriptSerializer serializer = new JavaScriptSerializer(); CustomIdentitySerialized serializeModel = serializer.Deserialize<CustomIdentitySerialized>(authTicket.UserData); if (serializeModel != null) { var ci = new CustomIdentity(serializeModel.UserName, serializeModel.PartyId, serializeModel.ConnectionId, serializeModel.RememberMe, serializeModel.Nick, serializeModel.PlayerId ); CustomPrincipal newUser = new CustomPrincipal(ci); HttpContext.Current.User = newUser; _application.Context.User = Thread.CurrentPrincipal = newUser; } } }
public CustomPrincipal(CustomIdentity identity) { _identity = identity; }