private void ValidatePassword(IPasswordModel model) { if (string.IsNullOrEmpty(model.password)) ModelState.AddModelError("model.password", "required"); if (string.IsNullOrEmpty(model.passwordConfirmation)) ModelState.AddModelError("model.passwordConfirmation", "required"); if (model.password != model.passwordConfirmation) { ModelState.AddModelError("model.password", "required"); ModelState.AddModelError("model.passwordConfirmation", "Passwort und Passwortwiederholung müssen übereinstimmen!"); } }
private void ValidatePassword(IPasswordModel model) { if (string.IsNullOrEmpty(model.password)) { ModelState.AddModelError("model.password", "required"); } if (string.IsNullOrEmpty(model.passwordConfirmation)) { ModelState.AddModelError("model.passwordConfirmation", "required"); } if (model.password != model.passwordConfirmation) { ModelState.AddModelError("model.password", "required"); ModelState.AddModelError("model.passwordConfirmation", "Passwort und Passwortwiederholung müssen übereinstimmen!"); } }
/// <summary> /// Changes the password. /// </summary> /// <param name="pwdModel">The password model.</param> /// <returns></returns> public async Task <bool> ChangePassword(IPasswordModel pwdModel) { return(await Task.Factory.StartNew(() => { if (pwdModel.NewPassword != pwdModel.ConfirmPassword) { return false; } var isValidPwd = _userRepository.GetVerifiedUser(pwdModel.UserName, pwdModel.OldPassword).Where(x => !x.LockoutEnabled).Any(); if (isValidPwd) { var result = _userRepository.UpdatePassword(pwdModel.UserName, pwdModel.NewPassword); return result > decimal.Zero; } return false; })); }
/// <summary> /// Changes the password. /// </summary> /// <param name="pwdModel">The password model.</param> /// <returns></returns> public async Task <bool> ChangePassword(IPasswordModel pwdModel) { if (pwdModel.IsNull() || pwdModel.NewPassword != pwdModel.ConfirmPassword) { return(false); } var user = await _userRepository.FindByIdAsync(UserContext.Current.UserId); if (user.IsNotNull()) { if (await _securityManager.VerifyHashedPassword(user.PasswordHash, pwdModel.OldPassword)) { var hashedPasword = await _securityManager.GetHashPassword(pwdModel.NewPassword); return(await _userRepository.UpdatePasswordAsync(UserContext.Current.UserId, hashedPasword)); } } return(false); }
protected override ValidationResult IsValid(object value, ValidationContext validationContext) { LoggerController.AddBeginMethodLog(this.GetType().Name, MethodBase.GetCurrentMethod().Name); s.Restart(); ValidationResult retval = new ValidationResult(""); IPasswordModel rvm = (IPasswordModel)validationContext.ObjectInstance; int nonLetterAndDigit = 0; int digit = 0; int upperCase = 0; int lowerCase = 0; string password = string.Empty; if (rvm.Password == null) { password = rvm.NewPassword; } else { password = rvm.Password; } foreach (char c in password) { if (char.IsDigit(c)) { digit++; } else if (!char.IsLetterOrDigit(c)) { nonLetterAndDigit++; } else if (char.IsUpper(c)) { upperCase++; } else if (char.IsLower(c)) { lowerCase++; } } if (nonLetterAndDigit == 0) { retval.ErrorMessage += "Hasło powinno zawierać przynajmniej jeden znak niealfanumeryczny."; } if (digit == 0) { retval.ErrorMessage += "Hasło powinno zawierać przynajmniej jedną cyfrę."; } if (upperCase == 0) { retval.ErrorMessage += "Hasło powinno zawierać przynajmniej jedną dużą literę."; } if (lowerCase == 0) { retval.ErrorMessage += "Hasło powinno zawierać przynajmniej jedną małą literę."; } s.Stop(); LoggerController.AddEndMethodLog(this.GetType().Name, MethodBase.GetCurrentMethod().Name, s.ElapsedMilliseconds); return(string.IsNullOrEmpty(retval.ErrorMessage) ? ValidationResult.Success : retval); }
private void OnDataView(IPasswordModel e) { _notify.DataViewEvent(e); }