public AuthToken GetAuthToken( string password, IPasswordHashingService passwordHasher, IAlphanumericTokenGenerator alphanumericTokenGenerator, IDateTimeService dateTimeService) { var accountSalt = PasswordCredential.PasswordSalt; if (PasswordCredential.HashedPassword == passwordHasher.HashPassword(password, accountSalt)) { var newAuthToken = new AuthToken() { TokenString = alphanumericTokenGenerator.GenerateAlphanumericToken(64), LastUsed = dateTimeService.GetCurrentDateTime(), Account = this }; AuthTokens.Add(newAuthToken); return(newAuthToken); } else { throw new Exception("Incorrect Username or Password."); } }
public RequestPasswordResetHandler( IUnitOfWork unitOfWork, IPasswordResetTokenSenderService passwordResetTokenSenderService, IAlphanumericTokenGenerator alphanumericTokenGenerator) { _unitOfWork = unitOfWork; _passwordResetTokenSenderService = passwordResetTokenSenderService; _alphanumericTokenGenerator = alphanumericTokenGenerator; }
public SendEmailVerificationMessageHandler( IUnitOfWork unitOfWork, IEmailVerifierService emailVerifierService, IAlphanumericTokenGenerator alphanumericTokenGenerator) { _unitOfWork = unitOfWork; _emailVerifierService = emailVerifierService; _alphanumericTokenGenerator = alphanumericTokenGenerator; }
public AddEmailAddressHandler( IUnitOfWork unitOfWork, IEmailVerifierService emailVerifierService, IAlphanumericTokenGenerator alphanumericTokenGenerator) { _unitOfWork = unitOfWork; _emailVerifierService = emailVerifierService; _alphanumericTokenGenerator = alphanumericTokenGenerator; }
public PasswordLoginHandler( IUnitOfWork unitOfWork, IPasswordHashingService passwordHashingService, IAlphanumericTokenGenerator alphanumericTokenGenerator, IDateTimeService dateTimeService, IMapper mapper) { _unitOfWork = unitOfWork; _passwordHashingService = passwordHashingService; _alphanumericTokenGenerator = alphanumericTokenGenerator; _dateTimeService = dateTimeService; _mapper = mapper; }
public CreateAccountHandler( IUnitOfWork unitOfWork, IPasswordHashingService passwordHashingService, IEmailVerifierService emailVerifierService, IAlphanumericTokenGenerator alphanumericTokenGenerator, ISecureRandomStringGeneratorService securePasswordSaltGenerator) { _unitOfWork = unitOfWork; _passwordHashingService = passwordHashingService; _emailVerifierService = emailVerifierService; _alphanumericTokenGenerator = alphanumericTokenGenerator; _securePasswordSaltGenerator = securePasswordSaltGenerator; }
public UsersController( AppDbContext appDbContext, IMapper mapper, IEmailSender emailSender, ISecurePasswordSaltGenerator securePasswordSaltGenerator, IPasswordHasher passwordHasher, IAlphanumericTokenGenerator alphanumericTokenGenerator, ApiConfig config) { _appDbContext = appDbContext; _mapper = mapper; _emailSender = emailSender; _securePasswordSaltGenerator = securePasswordSaltGenerator; _passwordHasher = passwordHasher; _alphanumericTokenGenerator = alphanumericTokenGenerator; _config = config; }
public void SendVerificationRequest(IEmailVerifierService emailVerifier, IAlphanumericTokenGenerator tokenGenerator) { if (!IsVerified) { //disable all previous verification tokens VerificationTokens.ToList().ForEach(i => i.IsActive = false); var newToken = new EmailVerificationToken() { VerificationToken = tokenGenerator.GenerateAlphanumericToken(64), IsActive = true, EmailAddress = this }; VerificationTokens.Add(newToken); emailVerifier.AttemptToVerify(this, newToken); } }
public void SendPasswordResetMessage( IPasswordResetMessageSender passwordResetMessageSender, IAlphanumericTokenGenerator tokenGenerator, IDateTimeService dateTimeService) { var resetToken = new PasswordResetToken() { Token = tokenGenerator.GenerateAlphanumericToken(16), CreatedAt = dateTimeService.GetCurrentDateTime() }; PasswordResetTokens.Add(resetToken); var addresses = new Dictionary <TypesOfAdress, string>(); addresses.Add(TypesOfAdress.Email, EmailAddress); passwordResetMessageSender.SendPasswordResetMessage(addresses, resetToken); }
public void SendResetRequest( IPasswordResetTokenSenderService passwordResetTokenSender, IAlphanumericTokenGenerator tokenGenerator) { //disable previous reset tokens PasswordResetTokens?.ToList().ForEach(i => i.IsActive = false); var newResetToken = new PasswordResetToken() { ResetToken = tokenGenerator.GenerateAlphanumericToken(64), IsActive = true }; PasswordResetTokens.Add(newResetToken); passwordResetTokenSender.SendResetToken( Account.PrimaryEmail, newResetToken ); }
public AuthToken Login( string password, IAlphanumericTokenGenerator tokenGenerator, IDateTimeService dateTimeService, IPasswordHashingService passwordHashingService) { var hashedPassword = passwordHashingService.HashPassword(password, PasswordCredential.Salt); if (hashedPassword != PasswordCredential.HashedPassword) { throw new DomainModelException("Incorrect username or password"); } var authToken = new AuthToken() { Token = tokenGenerator.GenerateAlphanumericToken(16), CreatedAt = dateTimeService.GetCurrentDateTime() }; AuthTokens.Add(authToken); return(authToken); }