示例#1
0
        private void SetPassword(User user, string inputPassword)
        {
            var salt     = PasswordEncryptor.CreateSalt(SALTSIZE);
            var passowrd = PasswordEncryptor.GenerateSHA256Hash(inputPassword, salt);

            user.Salt     = salt;
            user.Password = passowrd;
        }
示例#2
0
        public SignInResponse SignInUser(UserSigninVM model)
        {
            if (!HasSameEmail(model.Email))
            {
                return(new SignInResponse(false, ErrorCode.NOEMAIL));
            }

            var userInDb = UnitOfWork.Users.SingleOrDefault(m => m.Email == model.Email);

            if (userInDb.IsCanceled)
            {
                return(new SignInResponse(false, ErrorCode.CANCELEDUSER));
            }

            var salt          = userInDb.Salt;
            var inputPassword = PasswordEncryptor.GenerateSHA256Hash(model.Password, salt);

            if (inputPassword != userInDb.Password)
            {
                return(new SignInResponse(false, ErrorCode.PASSWORDNOTMATCH));
            }

            return(new SignInResponse(true, userInDb.UserId, userInDb.Email));
        }