public void Login(string email, string password) { int hash = password.GetHashCode(); email = email.ToLower(); string result = string.Empty; User user = _db.Users.FirstOrDefault(item => item.Email.ToLower().Equals(email)); if (user != null && user.PasswordHash.Equals(hash)) { if (user.IsEnabled == true) { SSO sso = _db.SSOes.FirstOrDefault(item => item.UserId.Equals(user.UserId)) ?? new SSO(); sso.SSOValue = SSOUtility.GenerateSSO(); sso.ExpirationDate = DateTime.Now.AddMinutes(Settings.SessionExpirationTimeout); sso.User = user; _db.SSOes.Add(sso); _db.SaveChanges(); result = sso.SSOValue.ToString(); } else { result = ResourceStrings.UserDeactivatedMessage; } } else { result = ResourceStrings.UserNotExistMessage; } WriteResponce(result); }
public IActionResult PostSignIn() { string samlResponse = ExtractSamlResponse(); XElement saml = XElement.Parse(samlResponse); IEnumerable <string> adminGroups = SSOUtility.GetAdminGroups(); bool isAdmin = SSOUtility.IsAdminUser(saml, adminGroups); // TODO: Give User Cookie or Token return(isAdmin ? Redirect("./") : Redirect("./")); }
protected void Page_Load(object sender, EventArgs e) { string UserName = Request.QueryString["UserName"]; string AuID = Request.QueryString["AuID"]; target = Request.QueryString["target"]; if (!String.IsNullOrEmpty(UserName)) { Login(UserName, AuID); SSOUtility.Login(this); } }