public ActionResult Navigate() { var sso = new SsoManager(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString); var token = sso.CreateToken("John", "SourceWeb"); return(Redirect($"https://localhost:44366/Home/Login/?{SsoManager.QueryStringToken}={token}")); }
public IActionResult Login() { var sso = new SsoManager(_configuration.GetConnectionString("DefaultConnection")); var loginId = sso.VerifyToken(Request.Query[SsoManager.QueryStringToken]); return(View("Index")); }
public IHttpActionResult Logout(SsoPayload payload) { if (!SignatureService.IsValidClientRequest( payload.SSOUserId, payload.Email, long.Parse(payload.Timestamp), payload.Signature )) { return(Unauthorized()); } // Find userid using sso id UserManager userManager = new UserManager(); SessionManager sm = new SessionManager(); SsoManager ssoManager = new SsoManager(); UserDTO userDto = ssoManager.FindUserById(new Guid(payload.SSOUserId)); if (userDto == null) { return(NotFound()); } string token = sm.GetSessionToken(userDto.Id); if (token == null) { return(Ok()); } sm.InvalidateSession(token); return(Ok()); }
public IHttpActionResult DeleteUser(SsoPayload payload) { if (!SignatureService.IsValidClientRequest( payload.SSOUserId, payload.Email, long.Parse(payload.Timestamp), payload.Signature )) { return(Unauthorized()); } if (payload.SSOUserId == null) { return(BadRequest("No SSO user id passed.")); } // Find userid using sso id UserManager userManager = new UserManager(); SessionManager sm = new SessionManager(); SsoManager ssoManager = new SsoManager(); ssoManager.DeleteUserBySsoId(new Guid(payload.SSOUserId)); return(Ok()); }