2015-09-23 1 views
-1

Я работаю над интрасети, я сплавил создание учетной записи (через проверку подлинности) с созданием Employee - создание Employee создает учетную запись (простое).Как сохранить предыдущий пароль, чтобы иметь возможность изменить текущий

Но вот проблема, я хочу сказать, что когда я меняю свой пароль в разделе Employee, он также меняет его в форме auth. часть.

Вот что я до сих пор:

[HttpPost] 
public ActionResult Edit(Employee objToEdit, FormCollection form) 
{ 
    //string oldpwd = objToEdit.Password;    
    IEnumerable<SelectListItem> CompanyList = _service.ListCompany(); 
    ViewBag.CompanyList = CompanyList; 

    IEnumerable<SelectListItem> SupervisorList = _service.ListSupervisor(); 
    ViewBag.SupervisorList = SupervisorList; 

    objToEdit.UpdatedDate = System.DateTime.Now; 
    objToEdit.CompanyId = int.Parse(form["CompanyId"]); 
    objToEdit.Supervisor = form["Supervisor"]; 

    if (_service.Edit(objToEdit)) 
    { 
     //bool changePasswordSucceeded; // Find a way to store old and new pwd 
     //try 
     //{ 
     // changePasswordSucceeded = WebSecurity.ChangePassword(User.Identity.Name, oldpwd, objToEdit.Password); 
     //} 
     //catch (Exception) 
     //{ 
     // changePasswordSucceeded = false; 
     //} 

     //if (changePasswordSucceeded) 
     //{ 
     // return RedirectToAction("Index", new { Message = CRAWebSiteMVC.Controllers.AccountController.ManageMessageId.ChangePasswordSuccess }); 
     //} 
     //else 
     //{ 
     // ModelState.AddModelError("", "The current password is incorrect or the new password is invalid."); 
     //} 
     return new RedirectResult(Url.Action("Index")); 
    } 
    return View(); 
} 

Все, что в комментариях происходит от аутентификации вида функции Управления, я хотел взять старый пароль и изменить его с новым, но я не могу похоже, нашли способ спасти старый.

Протестировано с паролем, написанным непосредственно в строке oldpwd (например, oldpwd = "mypwd"), и это сработало, все, что мне нужно, - это способ сохранить предыдущий.

Любые идеи, как это можно достичь?

ответ

0

Вы пытались объединить старый pwd с новым pwd? Я имею в виду:

oldpwd = "mypwd"."====".oldpwd; 

С этой OLDPWD переменной будет выглядеть следующим образом:

NEWPASS====OLDPASS 

удачи!

+0

Проблема в том, что я не могу найти способ сохранить oldpwd. Если он равен «objToEdit.Password», он принимает текущее (так уже измененное) значение паролей. – Christopher

+0

Ну. Есть один раз, когда вы можете получить доступ к старому и новому паролю? Итак, в этот момент введите новый пароль = oldpassword. "====". Newpassword; –