public async Task <IActionResult> SetPassword([FromBody] SetPasswordInput input) { if (!ModelState.IsValid) { return(Ok(ModelState)); } var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } var addPasswordResult = await _userManager.AddPasswordAsync(user, input.NewPassword); if (!addPasswordResult.Succeeded) { foreach (var error in addPasswordResult.Errors) { ModelState.AddModelError("ModelErrors", error.Description); } return(Ok(ModelState)); } await _signInManager.RefreshSignInAsync(user); var statusMessage = "Your password has been set."; return(Ok(new StatusResponse() { Status = statusMessage })); }
public async Task <IActionResult> SetPassword(SetPasswordInput model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var addPasswordResult = await _userManager.AddPasswordAsync(CurrentUser, model.NewPassword); if (!addPasswordResult.Succeeded) { foreach (var error in addPasswordResult.Errors) { ModelState.AddModelError(string.Empty, error.Description); } return(BadRequest(ModelState)); } await _signInManager.SignInAsync(CurrentUser, isPersistent : false); _logger.LogInformation("User set password successfully."); return(Ok("Your password has been set.")); }
public async Task <IActionResult> SetPassword(SetPasswordInput model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var addPasswordResult = await UserManager.AddPasswordAsync(CurrentUser, model.NewPassword); if (!addPasswordResult.Succeeded) { foreach (var error in addPasswordResult.Errors) { ModelState.AddModelError(string.Empty, error.Description); } return(BadRequest(ModelState)); } await SignInManager.SignInAsync(CurrentUser, false); Logger.LogInformation("Senha definida pelo usuário com sucesso."); return(Ok("Your password has been set.")); }