Exemple #1
0
        protected void SubChange_Click(object sender, EventArgs e)
        {
            if (NewPassword.Text != ConfirmPassword.Text)
            {
                lblStatusVal.Text      = "New passwords do not match";
                lblStatusVal.ForeColor = System.Drawing.Color.Red;
                return;
            }

            string error;

            if (!DirMgr.isValidPassword(NewPassword.Text, out error))
            {
                lblStatusVal.Text      = error;
                lblStatusVal.ForeColor = System.Drawing.Color.Red;

                log.Info(String.Format("Invalid password for {0}", Username.Text));
                return;
            }

            // Only set the Google password if the password length is at least 8 characters
            Boolean setGoogle = true;

            if (NewPassword.Text.Length < 8)
            {
                setGoogle = false;
                lblStatusSecondary.ForeColor = System.Drawing.Color.Red;
                lblStatusSecondary.Text      = "Google device password NOT set must be greater than 8 characters";
            }
            else
            {
                lblStatusSecondary.Text = "";
            }

            Boolean sync = false;

            if (DirMgr.checkPw(Username.Text, OldPassword.Text))
            {
                try
                {
                    if (sync)
                    {
                        DirMgr.changePw(Username.Text, OldPassword.Text, NewPassword.Text);
                    }
                    else
                    {
                        DirMgr.setPw(Username.Text, NewPassword.Text);
                    }

                    if (setGoogle)
                    {
                        log.Debug(String.Format("Setting Google password for user {0}", Username.Text));
                        Google.setPw(Username.Text, NewPassword.Text);
                    }

                    lblStatusVal.Text      = "OK. New Password Set<br />";
                    lblStatusVal.ForeColor = System.Drawing.Color.Green;
                }
                catch (System.DirectoryServices.AccountManagement.PasswordException)
                {
                    lblStatusVal.Text      = "Password does not meet the <br />complexity requirements.";
                    lblStatusVal.ForeColor = System.Drawing.Color.Red;
                    return;
                }
                catch (Exception ex)
                {
                    lblStatusVal.Text      = "Something went wrong.<br />Please contact the Help Desk<br />552-6900";
                    lblStatusVal.ForeColor = System.Drawing.Color.Red;

                    log.Error("Problem resetting password for " + Username.Text);
                    log.Error(ex);
                }
            }
            else
            {
                lblStatusVal.Text      = "Incorrect old password";
                lblStatusVal.ForeColor = System.Drawing.Color.Red;

                log.Info(String.Format("Incorrect old password for {0}", Username.Text));
            }
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            string error;

            if (!DirMgr.isValidPassword(Password.Text, out error))
            {
                lblStatusVal.Text      = "Your password is not complex enough.  Please set a complex password and try again.";
                lblStatusVal.ForeColor = System.Drawing.Color.Red;

                log.Info(String.Format("Invalid password for {0}", Username.Text));
                return;
            }

            bool showDetails = false;

            if (DirMgr.checkAD(Username.Text, Password.Text))
            {
                ADPasswdStatus.Text      = "AD Password is correct.";
                ADPasswdStatus.ForeColor = System.Drawing.Color.Green;
                ADPasswdImage.ImageUrl   = "~/images/GreenCheckMark.png";
                showDetails = true;
            }
            else
            {
                ADPasswdStatus.Text      = "AD Password is incorrect.";
                ADPasswdStatus.ForeColor = System.Drawing.Color.Red;
                ADPasswdImage.ImageUrl   = "~/images/RedCheckMark.png";
            }

            /* if (DirMgr.checkED(Username.Text, Password.Text))
             * {
             *   EDPasswdStatus.Text = "eDirectory Password is correct.";
             *   EDPasswdStatus.ForeColor = System.Drawing.Color.Green;
             *   EDPasswdImage.ImageUrl = "~/images/GreenCheckMark.png";
             *   showDetails = true;
             * }
             * else
             * {
             *   EDPasswdStatus.Text = "eDirectory Password is incorrect.";
             *   EDPasswdStatus.ForeColor = System.Drawing.Color.Red;
             *   EDPasswdImage.ImageUrl = "~/images/RedCheckMark.png";
             * }*/

            if (Google.checkPw(Username.Text, Password.Text))
            {
                GooglePasswdStatus.Text      = "Google Device Password is correct.";
                GooglePasswdStatus.ForeColor = System.Drawing.Color.Green;
                GooglePasswdImage.ImageUrl   = "~/images/GreenCheckMark.png";
            }
            else
            {
                GooglePasswdStatus.Text      = "Google Device Password is incorrect.";
                GooglePasswdStatus.ForeColor = System.Drawing.Color.Red;
                GooglePasswdImage.ImageUrl   = "~/images/RedCheckMark.png";
            }


            if (showDetails)
            {
                TimeZoneInfo pacific = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");

                if (AD.isEnabled(Username.Text))
                {
                    lblEnabled.Text = "Enabled";
                }
                else
                {
                    lblEnabled.Text = "Disabled";
                }

                DateTime?expiration = AD.getExpiration(Username.Text);
                if (expiration != null)
                {
                    lblExpiration.Text = (TimeZoneInfo.ConvertTime((DateTime)expiration, pacific)).ToString();
                }
                else
                {
                    lblExpiration.Text = "Never";
                }

                lblHome.Text = AD.getHome(Username.Text);

                DateTime?pwSet = AD.getLastPasswordSet(Username.Text);
                if (pwSet != null)
                {
                    lblPwSet.Text = (TimeZoneInfo.ConvertTime((DateTime)pwSet, pacific)).ToString();
                }
                else
                {
                    lblPwSet.Text = "Never";
                }
            }
        }