コード例 #1
0
ファイル: UserController.cs プロジェクト: sm-g/payments
 /// <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);
 }
コード例 #2
0
ファイル: UserController.cs プロジェクト: sm-g/payments
        /// <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
            });
        }