示例#1
0
        public async Task <IActionResult> LoginUser([FromForm] LoginCommand login)
        {
            var loginCommand = new LoginCommand()
            {
                Username = _encryptionService.DecryptData(login.Username),
                Password = _encryptionService.DecryptData(login.Password)
            };

            var result = await Mediator.Send(loginCommand);

            return(result.Successful == true?Ok(result) : BadRequest(result.Exception.InnerException.Message ?? result.Exception.Message));
        }
示例#2
0
        public async Task <RequestResponse> ResetPasswordUserAsync(ResetPasswordCommand resetPassword)
        {
            var email              = _encryptionService.DecryptData(resetPassword.Email);
            var newPassword        = _encryptionService.DecryptData(resetPassword.NewPassword);
            var newConfirmPassword = _encryptionService.DecryptData(resetPassword.NewConfirmPassword);

            var user = await _userManager.FindByEmailAsync(email);

            if (user == null)
            {
                throw new Exception("The user does not exist");
            }
            if (!newPassword.Equals(newConfirmPassword))
            {
                throw new Exception("Passwords do not match");
            }

            await _userManager.ResetPasswordAsync(user, resetPassword.TokenReset, newPassword);

            return(RequestResponse.Success());
        }
示例#3
0
        public async Task <IActionResult> DecryptData([FromBody] DecryptModelViewModel model, CancellationToken cancellationToken)
        {
            try
            {
                var result = await _encryptionService.DecryptData(model.DecryptData, cancellationToken);

                return(Ok(result));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, $"Error during data decryption, string: {model.DecryptData}");

                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }