public JsonResult ImportAdUsers(IList <string> usernames) { var importedUsers = new List <Usuario>(); var systemUsers = _accountService.GetUsers(); foreach (var username in usernames) { var adInfo = AdUserInfoService.GetAdUserInfo(username); var userAccount = new Usuario { NombreUsuario = adInfo.LoginName, NombreMostrar = adInfo.DisplayName, Email = adInfo.EmailAddress, EsLdap = true, CreadoEn = DateTime.Now, ActualizadoEn = DateTime.Now, LocalPassword = "", UltimoLoginEn = DateTime.Now.AddYears(-100), UltimaActividadEn = DateTime.Now.AddYears(-100) }; if (systemUsers.All(u => u.NombreUsuario != adInfo.LoginName)) { var confirmation = _accountService.SaveOrUpdateUser(userAccount); if (confirmation.WasSuccessful) { importedUsers.Add(userAccount); } } } return(Json(true)); }
public ActionResult ChangePassword(ChangePasswordModel formModel) { if (ModelState.IsValid) { try { AdUserInfoService.ResetPassword(User.Identity.Name, formModel.OldPassword, formModel.Password); this.AddPageMessage("Contraseña cambiada con éxito", PageMessageType.Success, true); return(RedirectToAction("LogOff")); } catch (Exception exception) { ModelState.AddModelError("", "Error al actualizar: " + exception.Message.ToString()); } } formModel.Usuario = _userAccountService.GetUser(User.Identity.Name); return(View(formModel)); }
public ActionResult UserStatus() { var viewModel = new UserStatusViewModel(); if (Request.IsAuthenticated) { viewModel.IsAuthenticated = true; var adUserInfo = AdUserInfoService.GetAdUserInfo(User.Identity.Name); if (adUserInfo != null) { viewModel.LoginName = adUserInfo.LoginName; viewModel.DisplayName = adUserInfo.FirstName; viewModel.Thumbnail = adUserInfo.Thumbnail; } } return(PartialView("_userStatus", viewModel)); }
public ActionResult Index() { var systemUsers = _accountService.GetUsers(); var adUsersForImport = new List <AdUserInfo>(); if (Configuration.GetConfig().LdapAuthEnabled) { IList <AdUserInfo> adUsers; try { adUsers = AdUserInfoService.GetAdUserList(); } catch (Exception exception) { adUsers = new List <AdUserInfo>(); this.AddPageMessage("No se puede conectar al Active Directory", PageMessageType.Error, false); } foreach (var adUser in adUsers) { if (systemUsers.All(u => u.NombreUsuario != adUser.LoginName)) { adUsersForImport.Add(adUser); } } } var viewModel = new UsersViewModel { Users = systemUsers, AdUsers = adUsersForImport, IsLdapAuthEnabled = Configuration.GetConfig().LdapAuthEnabled }; return(View(viewModel)); }