protected ManageAccountBaseController( UserManager userManager, UserSignInManager signInManager, RoleManager roleManager) { this.UserManager = userManager; this.SignInManager = signInManager; }
public ActionResult Login(LoginModel model) { if (ModelState.IsValid) { //looking for user in DB AppUser user = UserSignInManager.LoginUser(model.Email, model.User_Password); if (user != null) { return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError("", "Username or password is incorrect. User didn't find."); } } return(View(model)); }
public ActionResult ResetPassword(ResetPasswordViewModel model) { if (!ModelState.IsValid) { return(View(model)); } try { UserSignInManager manager = new UserSignInManager(); var result = manager.ResetUserPassword(model); if (result.Status == PasswordResetStatus.Success) { return(RedirectToAction("ResetPasswordConfirmation", "Account")); } else if (result.Status == PasswordResetStatus.InvalidEmailAddress) { ModelState.AddModelError("", "Invalid email address provided. Please try again."); } else { foreach (var error in result.Errors) { if (error.Contains("one non letter or digit character")) { var replaceError = error.Replace("Passwords must have at least one non letter or digit character.", "Passwords must have at least one special character."); ModelState.AddModelError("", replaceError); } else { ModelState.AddModelError("", error); } } } } catch (Exception ex) { string message = "Exception occurred!!!"; log.Error(message, ex); ModelState.AddModelError("", message); return(View(model)); } return(View()); }
public ActionResult ForgotPassword(ForgotPasswordViewModel model) { if (ModelState.IsValid) { try { UserSignInManager manager = new UserSignInManager(); var result = manager.GeneratePasswordResetToken(model.Email); if (result.Status == PasswordResetStatus.Success) { EmailHelpers eh = new EmailHelpers(); string resetcode = result.ResetToken; string username = result.EmailAddress; var callbackUrl = Url.Action("ResetPassword", "Account", new { code = resetcode }, protocol: Request.Url?.Scheme); eh.SendPasswordResetEmail(model.Email, callbackUrl); var logMessage = Helpers.FormatLogMessage(TableNameConstants.UsersTableName, username, model.Email, "Password reset email sent successfully!!!"); log.Info(logMessage); return(RedirectToAction("ForgotPasswordConfirmation", "Account")); } else { log.WarnFormat("Unable to reset password for email: {0}", model.Email); ModelState.AddModelError("", result.Status == PasswordResetStatus.InvalidEmailAddress ? "Invalid email address provided. Please try again." : $"Unable to reset password for email: {model.Email}"); } } catch (Exception ex) { string message = "Exception occurred!!!"; log.Error(message, ex); ModelState.AddModelError("Exception", message); return(View(model)); } } // If we got this far, something failed, redisplay form return(View(model)); }
protected override void Dispose(bool disposing) { if (disposing) { if (_userManager != null) { _userManager.Dispose(); _userManager = null; } if (_signInManager != null) { _signInManager.Dispose(); _signInManager = null; } } base.Dispose(disposing); }
public ActionResult Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } try { var signinManager = new UserSignInManager(); string browserString = $"Browser: {Request.Browser.Browser}, Version: {Request.Browser.Version}"; var result = signinManager.ValidateUserCredentials(model.Email, model.Password); string logMessage; switch (result.Status) { case SignInStatus.Success: IdentitySignin(result.UserInfo, isPersistent: model.RememberMe); logMessage = Helpers.FormatLogMessage(TableNameConstants.UsersTableName, model.Email, model.Email, InfoMessages.UserLoginSuccess, browserString); log.Info(logMessage); return(RedirectToLocal(returnUrl)); case SignInStatus.LockedOut: logMessage = Helpers.FormatLogMessage(TableNameConstants.UsersTableName, model.Email, model.Email, InfoMessages.UserLockedOut, browserString); log.Info(logMessage); ModelState.AddModelError("", "Invalid login attempt - Account Locked out. Please contact your project manager."); return(View(model)); default: logMessage = Helpers.FormatLogMessage(TableNameConstants.UsersTableName, model.Email, model.Email, InfoMessages.UserLoginFailure, browserString); log.Info(logMessage); ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } } catch (Exception ex) { log.Error("Exception occurred!!!", ex); ModelState.AddModelError("", "Exception occurred!!!"); return(View(model)); } }
private void IdentitySignin(HTGTUsersViewModel user, bool isPersistent = false) { var claims = new List <Claim> { // create required claims new Claim(ClaimTypes.NameIdentifier, user.EmailAddress), new Claim(ClaimTypes.Name, UserSignInManager.FormatName(user.FirstName, user.LastName)), // custom – my serialized AppUserState object new Claim("HTGTUserInfo", user.ToString()) }; var identity = new ClaimsIdentity(claims, DefaultAuthenticationTypes.ApplicationCookie); AuthenticationManager.SignIn(new AuthenticationProperties() { AllowRefresh = true, IsPersistent = isPersistent, ExpiresUtc = DateTime.UtcNow.AddDays(1) }, identity); }
public LocalController(UsersManager userManager, UserSignInManager signInManager) { UserManager = userManager; SignInManager = signInManager; }
public AccountController(UserSignInManager signInManager) { SignInManager = signInManager; }
public AccountController(UsersManager userManager, UserSignInManager signInManager) { UserManager = userManager; SignInManager = signInManager; }
public LoginController(UserManager userManager, UserSignInManager signInManager) { UserManager = userManager; SignInManager = signInManager; }
public AccountController(UserManager userManager, UserSignInManager signInManager) { UserManager = userManager; SignInManager = signInManager; }