Пример #1
0
        public IActionResult TwoFactorLogIn([FromBody] TwoFactorLoginRequest model)
        {
            var user = _userService.GetById(model.UserId);
            var verificationStatus = _userService.VerifyTotpToken(user, model.Token);

            if (verificationStatus != 1)
            {
                if (verificationStatus == 0)
                {
                    return(BadRequest(new
                    {
                        Success = false,
                        VerificationStatus = 0,
                        Messages = new string[] { "Wrong code" }
                    }));
                }
                else
                {
                    return(BadRequest(new
                    {
                        Success = false,
                        VerificationStatus = 2,
                        Messages = new string[] { "Code expired" }
                    }));
                }
            }
            else
            {
                return(Ok(new
                {
                    Success = true,
                    VerificationStatus = 1,
                    AccessToken = _userService.GenerateAuthToken(user)
                }));
            }
        }
Пример #2
0
 /// <inheritdoc/>
 public ClientResponse <LoginResponse> TwoFactorLogin(TwoFactorLoginRequest request)
 {
     return(client.TwoFactorLoginAsync(request).GetAwaiter().GetResult());
 }