public async Task <IActionResult> EnableAuthenticator(EnableUserAuthenticatorViewModel model) { if (!ModelState.IsValid) { return(View(model)); } try { var user = await _identityService.GetUser(User); var enableAuthenticatorCommandResult = await _mediator.Send(new EnableUserAuthenticatorCommand() { VerificationCode = model.Code.Replace(" ", string.Empty).Replace("-", string.Empty), User = user }); if (enableAuthenticatorCommandResult.Succeeded) { return(RedirectToAction(nameof(GenerateRecoveryCodes))); } } catch (ValidationException ex) { AddErrors(ex); } return(View(model)); }
public async Task <IActionResult> EnableAuthenticator() { var user = await _identityService.GetUser(User); var generateAuthenticatorKeyCommandResponse = await _mediator.Send(new GenerateUserAuthenticatorKeyCommand() { User = user }); var model = new EnableUserAuthenticatorViewModel { SharedKey = FormatKey(generateAuthenticatorKeyCommandResponse.AuthenticatorKey), AuthenticatorUri = GenerateQrCodeUri(user.Email, generateAuthenticatorKeyCommandResponse.AuthenticatorKey) }; return(View(model)); }