public async Task CreateUserAsync(User user, CancellationToken ct = default) { var hash = PasswordVerificationService.CreateHash(user.Password, out var salt); user.Password = hash; user.Salt = salt; user.Login = user.Email; await _userRepository.CreateAsync(user, ct); }
public async Task <User> GetUserIfVerified(string email, string password, CancellationToken ct = default) { var user = await GetUserAsync(email, ct); if (user == null) { return(null); } if (PasswordVerificationService.VerifyPassword(password, user.Salt, user.Password)) { return(await Task.FromResult(user)); } return(await Task.FromResult <User>(null)); }