Пример #1
0
        private static User MapNewUser(UserRequestDto user)
        {
            var password = PasswordUtils.GeneratePassword();
            var salt     = Guid.NewGuid().ToString();

            return(new User
            {
                Login = user.Login,
                FullName = user.FullName,
                IsActive = true,
                IsAdmin = false,
                Password = PasswordUtils.CreatePasswordHash(password, salt),
                Salt = salt,
            });
        }
Пример #2
0
        public Result <bool> SetUserPassword(int userId, string password)
        {
            return(WorkWithDb(db =>
            {
                var user = db.Set <User>().FirstOrDefault(u => u.Id == userId);
                if (user == null)
                {
                    return Result <bool> .Fail(Errors.UserNotFound);
                }

                user.Password = PasswordUtils.CreatePasswordHash(password, user.Salt);
                db.SaveChanges();

                return Result <bool> .Success(true);
            }));
        }
Пример #3
0
        private static Result <User> GetUserByLoginPassword(string login, string password, DbContext db)
        {
            var user = db.Set <User>()
                       .FirstOrDefault(u => u.Login.Equals(login, StringComparison.InvariantCultureIgnoreCase));

            if (user == null)
            {
                return(Result <User> .Fail(Errors.WrongLoginOrPassword));
            }

            if (user.Password != PasswordUtils.CreatePasswordHash(password, user.Salt))
            {
                return(Result <User> .Fail(Errors.WrongLoginOrPassword));
            }

            return(Result <User> .Success(user));
        }