/* * // авторизация пользователя по логину и хешу пароля * public String LoginUserMd5(String Login, String Password_md5) * { * Debug.Info("Call LoginUser Login ="******"Пользователь с таким логином и паролем не найден", TypeException.InvalidLoginOrPassword); * } * else * { * user.SessionKey = Guid.NewGuid(); * db.SaveChanges(); * return user.SessionKey.ToString(); * } * } * }*/ // авторизация пользователя по логину и паролю public String LoginUser(String Login, String Password) { using (var db = new DataBase()) { var user = db.Admins.Where(u => u.Login == Login).SingleOrDefault(); if (user == null) { throw new uniJudgeException("Пользователь с таким логином и паролем не найден", TypeException.InvalidLoginOrPassword); } else { // теперь сверим пароли if (user.Password_SaltAndHash == HashMd5.getMd5Hash(Password + user.PasswordSalt)) { if (user.AllowAccessToAdminPanel == false) { throw new uniJudgeException("Запрещен доступ к админ панели", TypeException.AccessDenided); } user.SessionKey = Guid.NewGuid(); db.SaveChanges(); return(user.SessionKey.ToString()); } else { throw new uniJudgeException("Пользователь с таким логином и паролем не найден", TypeException.InvalidLoginOrPassword); } } } }
public String CreateNewPasswordUseble(String SessionKey, int AdminId, string pass) { CheckSession(SessionKey); using (var db = new DataBase()) { var admin = db.Admins.Where(u => u.Id == AdminId).Single(); var newPass = pass.Length >= 6 ? pass : Guid.NewGuid().ToString().Substring(0, 13); // новый парль - это Guid в котором были взять первые 13 символов admin.PasswordSalt = Guid.NewGuid().ToString(); admin.Password_SaltAndHash = HashMd5.getMd5Hash(newPass + admin.PasswordSalt); db.SaveChanges(); return(newPass); } }
public String CreateNewUserPassword(String SessionKey, int UserId, String pass) { CheckSession(SessionKey); using (var db = new DataBase()) { var user = db.Users.Where(u => u.Id == UserId).Single(); var newPass = pass.Length >= 6 ? pass : Guid.NewGuid().ToString().Substring(0, 13); // новый парль - это Guid в котором были взять первые 13 символов user.PasswordEncrypted = WCFServices.ServiceHelper.Crypt.Encrypt(newPass, Properties.Settings.Default.KeyForPasswordEncrypt); user.PasswordSalt = Guid.NewGuid().ToString(); user.Password_SaltAndHash = HashMd5.getMd5Hash(newPass + user.PasswordSalt); db.SaveChanges(); return(newPass); } }
protected void RegisterUser_CreatedUser(object sender, EventArgs e) { Compte compte = new Compte(); //Récupérer informations saisies String nom = this.TextBoxNom.Text; String prenom = this.TextBoxPrenom.Text; String email = this.Email.Text; String login = this.UserName.Text; String mdp = HashMd5.getMd5Hash(Password.Text); try { compte.creerCompte(nom, prenom, email, login, mdp); Response.Redirect("~/pages/Account/Login.aspx"); } catch (Exception) { ErrorMessage.Text = "L'utilisateur n'a pas pu être créé"; } }
protected void VerifierConnection_Click(object sender, EventArgs e) { Compte compte = new Compte(); if (compte.getPassword(UserName.Text, HashMd5.getMd5Hash(Password.Text))) { DataTable dt = compte.getInformationsPersonne(UserName.Text); Session["connecte"] = "true"; Session["personnePrenom"] = dt.Rows[0].ItemArray.GetValue(1).ToString(); Session["personneNom"] = dt.Rows[0].ItemArray.GetValue(0).ToString(); Session["personneEmail"] = dt.Rows[0].ItemArray.GetValue(5).ToString(); Session["personneLogin"] = dt.Rows[0].ItemArray.GetValue(2).ToString(); Session["personneID"] = dt.Rows[0].ItemArray.GetValue(4).ToString(); Response.Redirect("~/"); } else { FailureText.Text = "L'identification a échoué"; } }