public bool Authenticate(HttpContext context, out HttpAuthenticationRequest request) { request = null; if (!context.Request.Headers.TryGetValue(SystemHeaders.TrustedAuth, out var values)) { return(false); } request = new HttpAuthenticationRequest(context, null, null); var principal = CreatePrincipal(values[0]); if (principal != null) { request.Authenticated(principal); } else { request.Unauthorized(); } return(true); }