コード例 #1
0
        public ActionResult ResetPWD(FormCollection _POST)
        {
            try
            {
                model.ResetPWD.Organization         = _POST["organization"];
                model.ResetPWD.UserPrincipalName    = _POST["userprincipalname"];
                model.ResetPWD.Password             = _POST["password"];
                model.ResetPWD.PasswordNeverExpires = _POST["passwordneverexpires"] == "on" ? true : false;

                CommonCAS.Log(string.Format("has run User/ResetPWD() for {0}, to reset password for user {1}", model.ResetPWD.Organization, model.ResetPWD.UserPrincipalName));

                using (MyPowerShell ps = new MyPowerShell())
                {
                    ps.SetPassword(model.ResetPWD.Organization, model.ResetPWD.UserPrincipalName, model.ResetPWD.Password, model.ResetPWD.PasswordNeverExpires);
                    var result = ps.Invoke();

                    if (result.Count() == 0)
                    {
                        model.OKMessage.Add(string.Format("Reset password success for '{1}', from Organization : '{0}' ", model.ResetPWD.Organization, model.ResetPWD.UserPrincipalName));
                    }
                    else
                    {
                        model.OKMessage.Add(string.Format("Reset password success for '{1}', from Organization : '{0}' ", model.ResetPWD.Organization, model.ResetPWD.UserPrincipalName));

                        foreach (PSObject message in result)
                        {
                            model.OKMessage.Add(message.ToString());
                        }
                    }
                }

                CommonCAS.Stats("User/ResetPWD");

                return(View("ResetPWD", model));
            }
            catch (Exception exc)
            {
                CommonCAS.Log("Exception: " + exc.Message);
                model.ActionFailed = true;
                model.Message      = exc.Message;
                return(View("ResetPWD", model));
            }
        }