Пример #1
0
        private AccessTokenResponse AuthenticateByUsernameAndPassword(UserAuthentication userAuthen)
        {
            var user = repository.GetUserByUsername(userAuthen.Username);
            AccessTokenResponse token = null;

            UserAuthenticationValidation validation = new UserAuthenticationValidation();
            var validationResult = validation.Validate(userAuthen);

            if (!validationResult.IsValid || user == null)
            {
                throw new BaseException(ErrorMessage.CREDENTIALS_NOT_MATCH);
            }

            var result = PasswordManipulation.VerifyPasswordHash(userAuthen.Password,
                                                                 user.PasswordHash, user.PasswordSalt);

            if (user != null && result)
            {
                token = CreateToken(user);
            }
            else
            {
                throw new BaseException(ErrorMessage.CREDENTIALS_NOT_MATCH);
            }

            return(token);
        }
Пример #2
0
        public string Authenticate(string username, string password)
        {
            var customer = dbContext.Customer
                           .SingleOrDefault(x => x.Username == username);

            if (customer == null || !PasswordManipulation.VerifyPasswordHash(password, customer.PasswordHash, customer.PasswordSalt))
            {
                throw new NowVNException("Credentials are not valid");
            }

            return(jwtTokenProvider.createAccesstoken(customer));
        }