/// <summary> /// Устанавливает новый пароль пользователю. /// </summary> /// <param name="password"></param> /// <param name="user"></param> public static void SetNewPassword(SecureString password, User user) { if (!PasswordMaker.CheckPassword(password)) { return; } user.Pass = PasswordMaker.MakeHash(password, user.Salt); }
/// <summary> /// Создаёт пользователя /// </summary> /// <exception cref="UsernameCollisionException"/> /// <exception cref="PasswordStrengthException"/> private User CreateUser(string username, SecureString password) { if (!IsUsernameAvailable(username)) { throw new UsernameCollisionException(); } if (!PasswordMaker.CheckPassword(password)) { throw new PasswordStrengthException(); } var credits = PasswordMaker.MakeSaltedHash(password); return(new User() { Login = username, Pass = credits.Item1, Salt = credits.Item2 }); }