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, }); }
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); })); }
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)); }