protected void Success(HttpAuthenticationContext context, string terminalToken, string userId) { var identity = new Fr8Identity("terminal-" + terminalToken, userId); var principle = new Fr8Principal(terminalToken, identity, new[] { "Terminal" }); Thread.CurrentPrincipal = principle; context.Principal = principle; if (HttpContext.Current != null) { HttpContext.Current.User = principle; } }
protected void Application_PostAuthenticateRequest(Object sender, EventArgs e) { var principal = (ClaimsPrincipal)Thread.CurrentPrincipal; if (principal != null) { var claims = principal.Claims; var roles = claims.Where(c => c.Type == ClaimTypes.Role).Select(c => c.Value).ToArray(); var userPrincipal = new Fr8Principal(null, principal.Identity, roles); /* * GenericPrincipal userPrincipal = new GenericPrincipal(principal.Identity, * claims.Where(c => c.Type == ClaimTypes.Role).Select(c => c.Value).ToArray()); */ Context.User = userPrincipal; } }