public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // В ряде случаев при сбое ChangePassword породит исключение, а не вернет false. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "Неправильный текущий пароль или недопустимый новый пароль."); } } } else { // У пользователя нет локального пароля, уберите все ошибки проверки, вызванные отсутствующим // полем OldPassword ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Не удалось создать локальную учетную запись. Возможно, учетная запись \"{0}\" уже существует.", User.Identity.Name)); } } } // Появление этого сообщения означает наличие ошибки; повторное отображение формы return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception e) { ModelState.AddModelError("", e); } } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword iniciará una excepción en lugar de devolver false en determinados escenarios de error. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "La contraseña actual es incorrecta o la nueva contraseña no es válida."); } } } else { // El usuario no dispone de contraseña local, por lo que debe quitar todos los errores de validación generados por un // campo OldPassword ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("No se puede crear una cuenta local. Es posible que ya exista una cuenta con el nombre \"{0}\".", User.Identity.Name)); } } } // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "Aktualne hasło się nie zgadza bądź nowe jest niepoprawne."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Nie udało się stworzyć konta. Użytkownik o nazwie \"{0}\" prawdopodobnie już istnieje.", User.Identity.Name)); } } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在特定失敗狀況下,ChangePassword 會擲回例外狀況,而非傳回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "目前密碼不正確或是新密碼無效。"); } } } else { // 使用者沒有本機密碼,因此,請移除遺漏 // OldPassword 欄位所導致的任何驗證錯誤 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("無法建立本機帳戶。名稱為 \"{0}\" 的帳戶可能已存在。", User.Identity.Name)); } } } // 如果執行到這裡,發生某項失敗,則重新顯示表單 return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword va lever une exception plutôt que de renvoyer la valeur False dans certains scénarios de défaillance. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "Le mot de passe actuel est incorrect ou le nouveau mot de passe n'est pas valide."); } } } else { // L'utilisateur n'a pas de mot de passe local. Veuillez donc supprimer les erreurs de validation provoquées par un // champ OldPassword manquant ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Le compte local ne peut pas être créé. Un compte portant le même nom \"{0}\" existe peut-être déjà.", User.Identity.Name)); } } } // Si nous sommes arrivés là, quelque chose a échoué, réafficher le formulaire return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在某些出错情况下,ChangePassword 将引发异常,而不是返回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // 用户没有本地密码,因此将删除由于缺少 // OldPassword 字段而导致的所有验证错误 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Cannot create local user account. It may already exist an account named of '{0}'.", User.Identity.Name)); } } } // 如果我们进行到这一步时某个地方出错,则重新显示表单 return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在某些失败方案中,ChangePassword 将引发异常,而不是返回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "当前密码不正确或新密码无效。"); } } } else { // 用户没有本地密码,因此将删除由于缺少 // OldPassword 字段而导致的所有验证错误 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception e) { ModelState.AddModelError("", e); } } } // 如果我们进行到这一步时某个地方出错,则重新显示表单 return(View(model)); }
public IHttpActionResult Post(LocalPasswordModel model) { if (ModelState.IsValid) { var response = RTUnityMapper.GetInstance <IUserCredential>().ChangePassword(model.UserName, CryptographyHelper.CreateMD5Hash(model.ConfirmPassword)); return(Ok(response)); } return(Ok(new { Success = false, Message = "Oops!try again." })); }
public ActionResult Manage(LocalPasswordModel model) { //bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); //ViewBag.HasLocalPassword = hasLocalAccount; //ViewBag.ReturnUrl = Url.Action("Manage"); //if (hasLocalAccount) //{ // if (System.Web.Http.ModelBinding.ModelState.IsValid) // { // // ChangePassword will throw an exception rather than return false in certain failure scenarios. // bool changePasswordSucceeded; // try // { // changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); // } // catch (Exception) // { // changePasswordSucceeded = false; // } // if (changePasswordSucceeded) // { // return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); // } // else // { // ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); // } // } //} //else //{ // // User does not have a local password so remove any validation errors caused by a missing // // OldPassword field // ModelState state = System.Web.Http.ModelBinding.ModelState["OldPassword"]; // if (state != null) // { // state.Errors.Clear(); // } // if (System.Web.Http.ModelBinding.ModelState.IsValid) // { // try // { // WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); // return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); // } // catch (Exception e) // { // System.Web.Http.ModelBinding.ModelState.AddModelError("", e); // } // } //} // If we got this far, something failed, redisplay form return(View(model)); }
public ViewResult Manage() { //string userEmail = (string)Session["userEmail"]; //Users user = userRepository.Users.FirstOrDefault(x => x.Email == userEmail); //return View(user); LocalPasswordModel locPsd = new LocalPasswordModel(); return(View(locPsd)); }
public ActionResult Manage(LocalPasswordModel model) { this.logger.Info("Entering: " + System.Reflection.MethodBase.GetCurrentMethod().ReflectedType.FullName + ": " + System.Reflection.MethodBase.GetCurrentMethod().Name + " --> " + User.Identity.Name); bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Unable to create local account. An account with the name \"{0}\" may already exist.", User.Identity.Name)); } } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Unable to create local account. An account with the name \"{0}\" may already exist.", User.Identity.Name)); } } } return(View(model)); }
public Result UserNewPassword(LocalPasswordModel model, string userName) { var userInfo = _userInfoRepository.GetSingleUser(userName); userInfo.Password = model.Password; _userInfoRepository.Update(userInfo); return(Result.AsSuccess()); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(WebSecurity.CurrentUser.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(WebSecurity.CurrentUser.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(WebSecurity.CurrentUser.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception e) { ModelState.AddModelError("", e); } } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = false; using (DataContext db = new DataContext()) { UserProfile user = db.UserProfiles.FirstOrDefault(e => e.UserName.Equals(User.Identity.Name, StringComparison.OrdinalIgnoreCase)); hasLocalAccount = string.IsNullOrEmpty(user.Password); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { if (user != null && user.Password.Equals(model.OldPassword, StringComparison.OrdinalIgnoreCase)) { user.Password = model.NewPassword; db.SaveChanges(); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { user.Password = model.NewPassword; db.SaveChanges(); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Unable to create local account. An account with the name \"{0}\" may already exist.", User.Identity.Name)); } } } } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Manage(ManageMessageId?message, LocalPasswordModel LocalPasswordModel) { LocalPasswordModel.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed." : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set." : message == ManageMessageId.RemoveLoginSuccess ? "The external login was removed." : ""; LocalPasswordModel.HasLocalPassword = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); LocalPasswordModel.ReturnUrl = Url.Action("Manage"); return(View(LocalPasswordModel)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasPassword = HasPassword(); var user = GetUser(); ViewBag.HasLocalPassword = hasPassword; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasPassword) { if (ModelState.IsValid) { IdentityResult result = UserManager.ChangePassword(user.Id, model.OldPassword, model.NewPassword); if (result.Succeeded) { user = UserManager.FindById(User.Identity.GetUserId()); if (user != null) { SignInManager.SignIn(user, isPersistent: false, rememberBrowser: false); } return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { AddErrors(result); } } } else { // User does not have a password so remove any validation errors caused by a missing OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { IdentityResult result = UserManager.AddPassword(user.Id, model.NewPassword); if (result.Succeeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } else { AddErrors(result); } } } // If we got this far, something failed, redisplay form return(View(model)); }
public JsonResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在某些出错情况下,ChangePassword 将引发异常,而不是返回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(Json(new { result = true, msg = "修改密码成功", url = "/System/Manage" })); } return(Json(new { result = false, msg = "当前密码不正确或新密码无效", url = "/System/Manage" })); } } else { // 用户没有本地密码,因此将删除由于缺少 // OldPassword 字段而导致的所有验证错误 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(Json(new { result = true, msg = "设置密码成功!", url = "/System/Manage" })); } catch (Exception) { ModelState.AddModelError("", String.Format("无法创建本地帐户。可能已存在名为“{0}”的帐户。", User.Identity.Name)); } } } return(Json(new { result = false, msg = "当前密码不正确或新密码无效", url = "/System/Manage" })); }
public async Task <ActionResult> Manage(string email) { AccountViewModel model = new AccountViewModel(); LocalPasswordModel localPasswordModel = new LocalPasswordModel(); TravelerModel traveler = await loginManager.GetTravelerByEmail(email); model.accountInfoModel = new AccountInfoModel(traveler); model.traveler = traveler; return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "Error, wrong password"); } } } else { ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception e) { ModelState.AddModelError("", e); } } } return(View(model)); }
//[ValidateJsonAntiForgeryToken] public ActionResult ManagePassword(LocalPasswordModel model) { bool hasLocalAccount = _membershipProvider.HasLocalAccount(User.Identity.Name); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = _membershipProvider.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (!changePasswordSucceeded) { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { _membershipProvider.SetLocalPassword(User.Identity.Name, model.NewPassword); } catch (MembershipException e) { ModelState.AddModelError("", e.Message); } } } if (!ModelState.IsValid) { Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Json(ModelState.ToDictionary(kvp => kvp.Key, kvp => kvp.Value.Errors.Select(e => e.ErrorMessage).ToArray()))); } return(Json(true)); }
public ActionResult SetPassword(ManageMessageId?message, string token) { ViewBag.StatusMessage = message == ManageMessageId.SetPasswordSuccess ? "Your password has been set." : ""; ViewBag.ReturnUrl = Url.Action("SetPassword"); var model = new LocalPasswordModel { ResetToken = token, OldPassword = "******" }; return(View(model)); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return(RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess })); } else { ModelState.AddModelError("", "Неправильный текущий пароль или недопустимый новый пароль."); } } } else { ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return(RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess })); } catch (Exception) { ModelState.AddModelError("", String.Format("Не удалось создать локальную учетную запись. Возможно, учетная запись \"{0}\" уже существует.", User.Identity.Name)); } } } return(View(model)); }
public async Task <ActionResult> ChgPwd(LocalPasswordModel model) { var result = await UserManager.ChangePasswordAsync(ResSettings.SettingsInSession.UserId, model.OldPassword, model.NewPassword); if (result.Succeeded) { APBplDef.ResUserBpl.UpdatePartial(ResSettings.SettingsInSession.UserId, new { Password = model.NewPassword }); return(RedirectToAction("Info", "User", new { id = ResSettings.SettingsInSession.UserId })); } else { AddErrors(result); return(View()); } }
// // GET: /Account/Manage public ActionResult Manage(ManageMessageId?message) { ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "你的密码,邮箱已更改。" : message == ManageMessageId.SetPasswordSuccess ? "已设置你的密码。" : message == ManageMessageId.RemoveLoginSuccess ? "已删除外部登录。" : ""; ViewBag.HasLocalPassword = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.ReturnUrl = Url.Action("Manage"); LocalPasswordModel localPasswordModel = new LocalPasswordModel { Mail = (db.User.Where(a => a.Id == WebSecurity.CurrentUserId).Single()).Mail }; return(View(localPasswordModel)); }
public ActionResult ChangePassword(LocalPasswordModel model) { if (ModelState.IsValid) { bool isUpdate = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); if (isUpdate == true) { return(RedirectToAction("LogOff", "Accounts")); } else { ViewBag.Message = "Your inserted current password is incorrect"; } } return(View(model)); }
public IHttpActionResult ChangePassword(LocalPasswordModel model) { if (ModelState.IsValid) { var password = CryptographyHelper.CreateMD5Hash(model.OldPassword); var user = _userCredential.GetByLoginID(model.UserName); if (user == null) { return(Ok(new { Success = false, Message = "Invalid userid/password." })); } var response = _userCredential.ChangePassword(user.Id, CryptographyHelper.CreateMD5Hash(model.ConfirmPassword)); return(Ok(response)); } return(Ok(new { Success = false, Message = "Oops!try again." })); }
public ActionResult Information(LocalPasswordModel model) { using (var db = new ChessDatabase()) { var modifiedUser = db.Users.Find(model.User.ID); if (modifiedUser == null) { return(RedirectToAction("Manage")); } modifiedUser.FirstName = model.User.FirstName; modifiedUser.LastName = model.User.LastName; modifiedUser.Address = model.User.Address; modifiedUser.UserName = model.User.UserName; db.SaveChanges(); } return(RedirectToAction("Manage")); }
public ActionResult UserPasswordChange(LocalPasswordModel Lpm) { using (var transaction = new TransactionScope()) { try { string eCode = ""; if (Session["UserID"] != null) { int UserID = Convert.ToInt32(Session["UserID"].ToString()); var UserInfo = _secUserInfoService.All().ToList().FirstOrDefault(x => x.UserID == UserID); if (UserInfo != null) { UserInfo.Password = SHA1.Encode(Lpm.NewPassword); _secUserInfoService.Update(UserInfo); _secUserInfoService.Save(); eCode = "1"; } else { eCode = "2"; } } else { return(RedirectToAction("SecUserLogin", "SecUserLogin")); } @ViewBag.Message = eCode; transaction.Complete(); return(View("~/Views/Security/ChangePassword.cshtml")); } catch (System.Exception) { transaction.Dispose(); @ViewBag.Message = "0"; return(View("~/Views/Security/ChangePassword.cshtml")); } } }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception) { ModelState.AddModelError("", String.Format("Unable to create local account. An account with the name \"{0}\" may already exist.", User.Identity.Name)); } } } // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在某些出错情况下,ChangePassword 将引发异常,而不是返回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "当前密码不正确或新密码无效。"); } } } else { // 用户没有本地密码,因此将删除由于缺少 // OldPassword 字段而导致的所有验证错误 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception) { ModelState.AddModelError("", String.Format("无法创建本地帐户。可能已存在名为“{0}”的帐户。", User.Identity.Name)); } } } // 如果我们进行到这一步时某个地方出错,则重新显示表单 return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = userService.HasLocalAccount(CurrentUser.Identity.UserId); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = userService.ChangeLocalPassword(CurrentUser.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = "Your password has been changed." }); } else { ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { userService.CreateLocalAccount(CurrentUser.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = "Your password has been set." }); } catch (Exception ex) { ModelState.AddModelError("", ex); this.LogError(ex); } } } // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Manage(LocalPasswordModel model) { ViewBag.ReturnUrl = Url.Action("Manage"); if (ModelState.IsValid) { bool changePasswordSucceeded = false; try { var userAccount = HttpContext.Session[Common.LoginUser] as UserProfile; if (userAccount != null && !string.IsNullOrEmpty(userAccount.UserName)) { var userExsit = _publicSiteCEContext.UserProfiles.Where(c => c.UserName.Equals(userAccount.UserName, StringComparison.OrdinalIgnoreCase)).FirstOrDefault(); if (userExsit != null) { userExsit.Password = Common.GetMD5_32(model.NewPassword + userExsit.PasswordSalt); _publicSiteCEContext.SaveChanges(); changePasswordSucceeded = true; } } } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "当前密码不正确或新密码无效。"); } } return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword iniciará una excepción en lugar de devolver false en determinados escenarios de error. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "La contraseña actual es incorrecta o la nueva contraseña no es válida."); } } } else { // El usuario no dispone de contraseña local, por lo que debe quitar todos los errores de validación generados por un // campo OldPassword ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception) { ModelState.AddModelError("", String.Format("No se puede crear una cuenta local. Es posible que ya exista una cuenta con el nombre \"{0}\".", User.Identity.Name)); } } } // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario return View(model); }
public ActionResult Manage(LocalPasswordModel model) { ViewBag.HasLocalPassword = true; ViewBag.ReturnUrl = Url.Action("Manage"); if (!ModelState.IsValid) { return View(model); } // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "Тековната лозинка е неточна или нова лозинка е невалидна."); } } } else { // User does not have a local password so remove any validation errors caused by a missing // OldPassword field ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception e) { ModelState.AddModelError("", e); } } } // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword va lever une exception plutôt que de renvoyer la valeur False dans certains scénarios de défaillance. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "Le mot de passe actuel est incorrect ou le nouveau mot de passe n'est pas valide."); } } } else { // L'utilisateur n'a pas de mot de passe local. Veuillez donc supprimer les erreurs de validation provoquées par un // champ OldPassword manquant ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception) { ModelState.AddModelError("", String.Format("Le compte local ne peut pas être créé. Un compte portant le même nom \"{0}\" existe peut-être déjà.", User.Identity.Name)); } } } // Si nous sommes arrivés là, quelque chose a échoué, réafficher le formulaire return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // 在特定失敗狀況下,ChangePassword 會擲回例外狀況,而非傳回 false。 bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "目前密碼不正確或是新密碼無效。"); } } } else { // 使用者沒有本機密碼,因此,請移除遺漏 // OldPassword 欄位所導致的任何驗證錯誤 ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception e) { ModelState.AddModelError("", e); } } } // 如果執行到這裡,發生某項失敗,則重新顯示表單 return View(model); }
public ActionResult Manage(LocalPasswordModel model) { // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Manage(LocalPasswordModel model) { bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); ViewBag.HasLocalPassword = hasLocalAccount; ViewBag.ReturnUrl = Url.Action("Manage"); if (hasLocalAccount) { if (ModelState.IsValid) { // ChangePassword는 특정 실패 시나리오에서 false를 반환하지 않고 예외를 발생시킵니다. bool changePasswordSucceeded; try { changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, model.OldPassword, model.NewPassword); } catch (Exception) { changePasswordSucceeded = false; } if (changePasswordSucceeded) { return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess }); } else { ModelState.AddModelError("", "현재 암호가 정확하지 않거나 새 암호가 잘못되었습니다."); } } } else { // 사용자에게 로컬 암호가 없으므로 누락된 OldPassword 필드에 의해 발생한 모든 유효성 검사 // OldPassword를 제거합니다. ModelState state = ModelState["OldPassword"]; if (state != null) { state.Errors.Clear(); } if (ModelState.IsValid) { try { WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword); return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess }); } catch (Exception) { ModelState.AddModelError("", String.Format("로컬 계정을 만들 수 없습니다. 이름이 \"{0}\"인 계정이 이미 있을 수 있습니다.", User.Identity.Name)); } } } // 이 경우 오류가 발생한 것이므로 폼을 다시 표시하십시오. return View(model); }
// // GET: /Account/Manage public ActionResult Manage(ManageMessageId? message) { ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed." : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set." : message == ManageMessageId.RemoveLoginSuccess ? "The external login was removed." : message == ManageMessageId.UdpateUserInfoSuccess ? "User info updated successfully." : message == ManageMessageId.UpdateUserInfoFailed ? "There was an error while trying to update user info" : ""; ViewBag.HasLocalPassword = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name)); var userId = WebSecurity.GetUserId(User.Identity.Name); bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(userId); var model = new LocalPasswordModel(); //Populate the user info stuff if (hasLocalAccount) { using (var context = new UserRolesContext()) { var user = context.UserProfiles.FirstOrDefault(x => x.UserId == userId); model.UserInfo = new ManageNonPasswordModel { UserId = user.UserId, FirstName = user.FirstName, LastName = user.LastName, PhoneNumber = user.PhoneNumber }; } } ViewBag.ReturnUrl = Url.Action("Manage"); return View(model); }
public async Task<ActionResult> ChangePassword(LocalPasswordModel model) { if (ModelState.IsValid) { // ChangePassword will throw an exception rather than return false in certain failure scenarios. var result = await UserManager.ChangePasswordAsync(User.Identity.GetUserId<int>(), model.OldPassword, model.NewPassword); ; if (result.Succeeded) { TempData["SuccessMessage"] = "Đổi mật khẩu thành công"; return RedirectToAction("ChangeUserProfile"); } else { ModelState.AddModelError("", "Mật khẩu hiện tại không đúng"); } } TempData["ErrorMessage"] = "Đã có lỗi xảy ra"; return RedirectToAction("ChangeUserProfile"); }