public async System.Threading.Tasks.Task <ActionResult> LogOutAsync() { var cp = (ClaimsPrincipal)User; var idtokenHint = cp.FindFirst("id_token"); if (idtokenHint != null) { var client = new HttpClient(); var disco = await client.GetDiscoveryDocumentAsync(new DiscoveryDocumentRequest() { Address = "http://localhost:5000", Policy = { RequireHttps = false } }); var ru = new IdentityModel.Client.RequestUrl(disco.EndSessionEndpoint); var endsession = ru.CreateEndSessionUrl(idtokenHint.Value, postLogoutRedirectUri: "http://localhost:5001/signout-oidc"); return(Redirect(endsession)); } return(RedirectToAction("SsoSignOutCallBack", "Home")); }