Exemplo n.º 1
0
        /// <summary>
        /// Using bound account view model, attempt to login
        /// and set authenticated property appropritely.
        /// If login is success SetUser will be called to set the authentication token.
        /// </summary>
        /// <param name="model"></param>
        public void Login(AccountViewModel model)
        {
            var request = new AccountVerificationRequest
            {
                Password = model.Account.Password,
                Username = model.Account.Username
            };

            var response = _accountService.VerifyAccount(request);

            if (!response.Success)
            {
                if (response.AccountInactive)
                {
                    model.Errors.Add("Account is Inactive");
                }
                if (response.AccountLockedOut)
                {
                    model.Errors.Add("Account is Locked Out");
                }
                if (response.InvalidPassword)
                {
                    model.Errors.Add("Invalid Password");
                }
                if (response.UsernameDoesNotExist)
                {
                    model.Errors.Add("Invalid Username or Password");
                }
            }
            else
            {
                SetUser(response.Account);
                model.IsAuthenticated = true;
            }
        }
Exemplo n.º 2
0
        public async Task <TransactionResponse> VerifyAccountAsync(AccountVerificationRequest payload, string region = null)
        {
            Signature signatureService = GetSignatureService();
            string    messageSignature = signatureService.Sign(JsonConvert.SerializeObject(payload));

            return(await verifyApi.VerifyAccountAsync(
                       CONTENT_TYPE,
                       signatureService.ClientRequestId,
                       GetApiKey(),
                       signatureService.TimeStamp,
                       payload,
                       messageSignature,
                       region
                       ));
        }