Beispiel #1
0
        //
        // GET: /Manage/Index

        /*public async Task<ActionResult> Index(ManageMessageId? message)
         * {
         *  ViewBag.StatusMessage =
         *      message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed."
         *      : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set."
         *      : message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set."
         *      : message == ManageMessageId.Error ? "An error has occurred."
         *      : message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added."
         *      : message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed."
         *      : "";
         *
         *  int.TryParse(User.Identity.GetUserId(), out var userId);
         *
         *  RegisteredUserModel model = new RegisteredUserModel
         *  {
         *      UserMail = User.Identity.GetUserName(),
         *  };
         *
         *  return View(model);
         * }
         * //
         * // POST: /Manage/RemoveLogin
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> RemoveLogin(string loginProvider, string providerKey)
         * {
         *  ManageMessageId? message;
         *  var result = await UserManager.RemoveLoginAsync(User.Identity.GetUserId(), new UserLoginInfo(loginProvider, providerKey));
         *  if (result.Succeeded)
         *  {
         *      var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *      if (user != null)
         *      {
         *          await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *      }
         *      message = ManageMessageId.RemoveLoginSuccess;
         *  }
         *  else
         *  {
         *      message = ManageMessageId.Error;
         *  }
         *  return RedirectToAction("ManageLogins", new { Message = message });
         * }
         *
         * //
         * // GET: /Manage/AddPhoneNumber
         * public ActionResult AddPhoneNumber()
         * {
         *  return View();
         * }
         *
         * //
         * // POST: /Manage/AddPhoneNumber
         * /*[HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> AddPhoneNumber(AddPhoneNumberViewModel model)
         * {
         *  if (!ModelState.IsValid)
         *  {
         *      return View(model);
         *  }
         *  // Generate the token and send it
         *  var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), model.Number);
         *  if (UserManager.SmsService != null)
         *  {
         *      var message = new IdentityMessage
         *      {
         *          Destination = model.Number,
         *          Body = "Your security code is: " + code
         *      };
         *      await UserManager.SmsService.SendAsync(message);
         *  }
         *  return RedirectToAction("VerifyPhoneNumber", new { PhoneNumber = model.Number });
         * }
         *
         * //
         * // POST: /Manage/EnableTwoFactorAuthentication
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> EnableTwoFactorAuthentication()
         * {
         *  await UserManager.SetTwoFactorEnabledAsync(User.Identity.GetUserId(), true);
         *  var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *  if (user != null)
         *  {
         *      await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *  }
         *  return RedirectToAction("Index", "Manage");
         * }
         *
         * //
         * // POST: /Manage/DisableTwoFactorAuthentication
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> DisableTwoFactorAuthentication()
         * {
         *  await UserManager.SetTwoFactorEnabledAsync(User.Identity.GetUserId(), false);
         *  var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *  if (user != null)
         *  {
         *      await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *  }
         *  return RedirectToAction("Index", "Manage");
         * }
         *
         * //
         * // GET: /Manage/VerifyPhoneNumber
         * public async Task<ActionResult> VerifyPhoneNumber(string phoneNumber)
         * {
         *  var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), phoneNumber);
         *  // Send an SMS through the SMS provider to verify the phone number
         *  return phoneNumber == null ? View("Error") : View(new VerifyPhoneNumberViewModel { PhoneNumber = phoneNumber });
         * }
         *
         * //
         * // POST: /Manage/VerifyPhoneNumber
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> VerifyPhoneNumber(VerifyPhoneNumberViewModel model)
         * {
         *  if (!ModelState.IsValid)
         *  {
         *      return View(model);
         *  }
         *  var result = await UserManager.ChangePhoneNumberAsync(User.Identity.GetUserId(), model.PhoneNumber, model.Code);
         *  if (result.Succeeded)
         *  {
         *      var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *      if (user != null)
         *      {
         *          await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *      }
         *      return RedirectToAction("Index", new { Message = ManageMessageId.AddPhoneSuccess });
         *  }
         *  // If we got this far, something failed, redisplay form
         *  ModelState.AddModelError("", "Failed to verify phone");
         *  return View(model);
         * }
         *
         * //
         * // POST: /Manage/RemovePhoneNumber
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> RemovePhoneNumber()
         * {
         *  var result = await UserManager.SetPhoneNumberAsync(User.Identity.GetUserId(), null);
         *  if (!result.Succeeded)
         *  {
         *      return RedirectToAction("Index", new { Message = ManageMessageId.Error });
         *  }
         *  var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *  if (user != null)
         *  {
         *      await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *  }
         *  return RedirectToAction("Index", new { Message = ManageMessageId.RemovePhoneSuccess });
         * }
         *
         * //
         * // GET: /Manage/ChangePassword
         * public ActionResult ChangePassword()
         * {
         *  return View();
         * }
         *
         * //
         * // POST: /Manage/ChangePassword
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> ChangePassword(ChangePasswordViewModel model)
         * {
         *  if (!ModelState.IsValid)
         *  {
         *      return View(model);
         *  }
         *  var result = await UserManager.ChangePasswordAsync(User.Identity.GetUserId(), model.OldPassword, model.NewPassword);
         *  if (result.Succeeded)
         *  {
         *      var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *      if (user != null)
         *      {
         *          await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *      }
         *      return RedirectToAction("Index", new { Message = ManageMessageId.ChangePasswordSuccess });
         *  }
         *  AddErrors(result);
         *  return View(model);
         * }
         *
         * //
         * // GET: /Manage/SetPassword
         * public ActionResult SetPassword()
         * {
         *  return View();
         * }
         *
         * //
         * // POST: /Manage/SetPassword
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public async Task<ActionResult> SetPassword(SetPasswordViewModel model)
         * {
         *  if (ModelState.IsValid)
         *  {
         *      var result = await UserManager.AddPasswordAsync(User.Identity.GetUserId(), model.NewPassword);
         *      if (result.Succeeded)
         *      {
         *          var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *          if (user != null)
         *          {
         *              await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
         *          }
         *          return RedirectToAction("Index", new { Message = ManageMessageId.SetPasswordSuccess });
         *      }
         *      AddErrors(result);
         *  }
         *
         *  // If we got this far, something failed, redisplay form
         *  return View(model);
         * }
         *
         * //
         * // GET: /Manage/ManageLogins
         * public async Task<ActionResult> ManageLogins(ManageMessageId? message)
         * {
         *  ViewBag.StatusMessage =
         *      message == ManageMessageId.RemoveLoginSuccess ? "The external login was removed."
         *      : message == ManageMessageId.Error ? "An error has occurred."
         *      : "";
         *  var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
         *  if (user == null)
         *  {
         *      return View("Error");
         *  }
         *  var userLogins = await UserManager.GetLoginsAsync(User.Identity.GetUserId());
         *  var otherLogins = AuthenticationManager.GetExternalAuthenticationTypes().Where(auth => userLogins.All(ul => auth.AuthenticationType != ul.LoginProvider)).ToList();
         *  ViewBag.ShowRemoveButton = user.PasswordHash != null || userLogins.Count > 1;
         *  return View(new ManageLoginsViewModel
         *  {
         *      CurrentLogins = userLogins,
         *      OtherLogins = otherLogins
         *  });
         * }
         *
         * //
         * // POST: /Manage/LinkLogin
         * [HttpPost]
         * [ValidateAntiForgeryToken]
         * public ActionResult LinkLogin(string provider)
         * {
         *  // Request a redirect to the external login provider to link a login for the current user
         *  return new AccountController.ChallengeResult(provider, Url.Action("LinkLoginCallback", "Manage"), User.Identity.GetUserId());
         * }
         *
         * //
         * // GET: /Manage/LinkLoginCallback
         * public async Task<ActionResult> LinkLoginCallback()
         * {
         *  var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(XsrfKey, User.Identity.GetUserId());
         *  if (loginInfo == null)
         *  {
         *      return RedirectToAction("ManageLogins", new { Message = ManageMessageId.Error });
         *  }
         *  var result = await UserManager.AddLoginAsync(User.Identity.GetUserId(), loginInfo.Login);
         *  return result.Succeeded ? RedirectToAction("ManageLogins") : RedirectToAction("ManageLogins", new { Message = ManageMessageId.Error });
         * }*/

        protected override void Dispose(bool disposing)
        {
            if (disposing && _userManager != null)
            {
                _userManager.Dispose();
                _userManager = null;
            }

            base.Dispose(disposing);
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
 public AccountController(IdentityConfig.ApplicationUserManager userManager, IdentityConfig.ApplicationSignInManager signInManager)
 {
     UserManager   = userManager;
     SignInManager = signInManager;
 }
Beispiel #4
0
 public ManageController(IdentityConfig.ApplicationUserManager userManager, IdentityConfig.ApplicationSignInManager signInManager, UserFacade userFacade)
 {
     UserManager   = userManager;
     SignInManager = signInManager;
     UserFacade    = userFacade;
 }
 public AccountController(IdentityConfig.ApplicationUserManager userManager)
 {
     UserManager = userManager;
 }
 public AccountController(IdentityConfig.ApplicationUserManager userManager, IdentityConfig.ApplicationSignInManager signInManager)
 {
     UserSignInManager = new UserAuthBusiness(userManager, signInManager);
 }
 public UserAuthBusiness(IdentityConfig.ApplicationUserManager userManager, IdentityConfig.ApplicationSignInManager signInManager)
 {
     UserManager   = userManager;
     SignInManager = signInManager;
 }
 public UsersController(MyDbContext myDbContext, IdentityConfig.ApplicationUserManager myuserManager)
 {
     dbContext    = myDbContext;
     _userManager = myuserManager;
 }
Beispiel #9
0
 public AccountController(IdentityConfig.ApplicationUserManager userManager,
                          ISecureDataFormat <AuthenticationTicket> accessTokenFormat)
 {
     UserManager       = userManager;
     AccessTokenFormat = accessTokenFormat;
 }