Esempio n. 1
0
        private string GetRestorePasswordMessage( MembershipUser user )
        {
            string password;
              string templateFileName;

              try
              {
            try
            {
              password = user.GetPassword();
              templateFileName = "restorePassword.txt";
            }
            catch ( Exception exc )
            {
              log.WarnFormat(
            "First chance exception when tried to get the password for {0} ({1}): {2}",
            user.UserName,
            user.Email,
            exc.Message
              );
              password = user.ResetPassword();
              templateFileName = "resetPassword.txt";
            }
              }
              catch ( Exception exc )
              {
            log.FatalFormat(
              "Can't {0} user password for {1} ({2}): {3}",
              Membership.EnablePasswordRetrieval ? "get" : "reset",
              user.UserName,
              user.Email,
              exc.Message
            );
            throw;
              }

              string templatePath = Path.Combine( HttpRuntime.AppDomainAppPath, "EmailTemplates" );
              templatePath = Path.Combine( templatePath, templateFileName );
              string messageText =
            File.ReadAllText( templatePath )
            .Replace( "<%UserName%>", user.UserName )
            .Replace( "<%Password%>", password )
            .Replace( "<%AdminEmail%>", Settings.Default.AdminEmail );

              return messageText;
        }
Esempio n. 2
0
 public void UpdateUser(MembershipUser user)
 {
     using (var context = new Security())
     {
         var usrToUpdate = context.Users.FirstOrDefault(f => f.Id == (int)user.ProviderUserKey);
         usrToUpdate.Name = user.UserName;
         usrToUpdate.Password = user.GetPassword();
         usrToUpdate.LastLogin = user.LastLoginDate;
         context.SaveChanges();
     }
 }
        protected string GeraBatAT(bool sohUpdArqUser)
        {
            try
            {
                //Pega o usuário logado...
                currentUser = Membership.GetUser();

                //Pega a chave de Criptografia...
                var Section = ConfigurationManager.GetSection("system.web/machineKey");
                string aux = ((System.Web.Configuration.MachineKeySection)(Section)).ValidationKey.ToString();
                bytes = ASCIIEncoding.ASCII.GetBytes(aux.Substring(0, 8));

                string pathCMD = ConfigurationManager.AppSettings["SrvFolderSTasks"] + "\\";
                string nomeCMD = "";

                //MPS - 21/OUT---------------------------------------------
                //Testa se existe parametros nos cmds...
                if (lstATcmds.SelectedValue.ToString().IndexOf("[p1]") > 0)
                {
                    string findParam = "";
                    string findParamConv = "";
                    string[] stringSeparators = new string[] { "[", "]" };
                    string[] vetParam = lstATcmds.SelectedValue.ToString().Split(stringSeparators, StringSplitOptions.None);
                    string[] vetParamConc = txtParams.Text.Split(stringSeparators, StringSplitOptions.None);
                    if (vetParam.Length == vetParamConc.Length)
                    {
                        foreach (string s in vetParam)
                        {
                            if (s.IndexOf(">>") == -1)
                            {
                                if (s.ToUpper().IndexOf("P") >= 0)
                                { findParam = findParam + "[" + s + "] "; }
                            }
                        }
                        foreach (string s in vetParamConc)
                        {
                            if ((s != " ") && (s != ""))
                            { findParamConv = findParamConv + s + " "; }
                        }
                    }
                    else
                    { return "Erro"; }

                    nomeCMD = lstATcmds.SelectedValue.ToString().Replace(findParam, findParamConv);
                }
                else
                { nomeCMD = lstATcmds.SelectedValue.ToString(); }
                //
                //MPS - 21/OUT---------------------------------------------

                string param = currentUser.UserName.Replace("\\", "_");
                param += " ";
                param += currentUser.GetPassword();

                string cryptedparam = ""; //DS_AuditXML.Util_list.Encrypt(param, bytes);

                //Grava param criptografado em arquivo...
                string batCMD = pathCMD + "AT_" + currentUser.UserName.Replace("\\", "_") + "_" + txtHoraIni.Text + DateTime.Now.Second + ".bat";
                string arqParam = pathCMD + "AT_" + currentUser.UserName.Replace("\\", "_") + ".txt";

                //Cria/Atualiza o Arquivo de usuario para utilizar no app BATCH...
                using (StreamWriter writer = new StreamWriter(arqParam, false))
                { writer.WriteLine(cryptedparam); }

                if (!sohUpdArqUser)
                {
                    //Cria um Arquivo BAt na pasta das ATs para executar via AT...
                    using (StreamWriter writer = new StreamWriter(batCMD, false))
                    {
                        writer.WriteLine("cd " + pathCMD.Replace("Tasks",""));
                        writer.WriteLine(nomeCMD);
                    }
                    return batCMD;
                }
                else
                {
                    return arqParam;
                }
            }
            catch (Exception ex)
            {
                return "Ocorreu um erro: " + ex.Message;
            }
        }
Esempio n. 4
0
        /// <summary>
        /// Sends the user password reminder.
        /// </summary>
        /// <param name="user"></param>
        /// <param name="passwordAnswer"></param>
        /// <returns></returns>
        public static void SendUserPasswordReminderNotification(MembershipUser user, string passwordAnswer)
        {
            if (user == null) throw new ArgumentNullException("user");

            //TODO: Move this to xslt notification
            //load template and replace the tokens
            var template = NotificationManager.Instance.LoadNotificationTemplate("PasswordReminder");
            var subject = NotificationManager.Instance.LoadNotificationTemplate("PasswordReminderSubject");
            var displayname = GetUserDisplayName(user.UserName);

            var context = new NotificationContext
                              {
                                  BodyText = String.Format(template, HostSettingManager.Get(HostSettingNames.ApplicationTitle),user.GetPassword()),
                                  EmailFormatType = HostSettingManager.Get(HostSettingNames.SMTPEMailFormat, EmailFormatType.Text),
                                  Subject = subject,
                                  UserDisplayName = displayname,
                                  Username = user.UserName
                              };

            NotificationManager.Instance.SendNotification(context);
        }
Esempio n. 5
0
        protected void gviewClients_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                HiddenUserName.Value = e.CommandArgument.ToString();
                if (e.CommandName == "Edit")
                {
                    UpdateClientModalPopupExtender.Show();
                    objMembershipUser = Membership.GetUser(HiddenUserName.Value);
                    txtUsername.Text = HiddenUserName.Value;
                    txtEmail.Text = objMembershipUser.Email.ToString();
                    chkStatus.Checked = objMembershipUser.IsApproved;
                    txtPassword.Text = objMembershipUser.GetPassword();
                    //fill user information from profile
                    objProfileBase = ProfileBase.Create(HiddenUserName.Value, true);
                    txtFirstname.Text = objProfileBase.GetPropertyValue("FName").ToString();
                    txtLastname.Text = objProfileBase.GetPropertyValue("LName").ToString();
                    txtMobilePhone.Text = objProfileBase.GetPropertyValue("MobilePhone").ToString();
                    txtHomePhone.Text = objProfileBase.GetPropertyValue("HomePhone").ToString();
                    txtPostalCode.Text = objProfileBase.GetPropertyValue("PostalCode").ToString();
                    txtCompanyName.Text = objProfileBase.GetPropertyValue("CompanyName").ToString();
                    txtState.Text = objProfileBase.GetPropertyValue("State").ToString();
                    txtCountry.Text = objProfileBase.GetPropertyValue("Country").ToString();
                    txtWorkPhone.Text = objProfileBase.GetPropertyValue("WorkPhone").ToString();
                    txtFax.Text = objProfileBase.GetPropertyValue("Fax").ToString();
                    txtAddress.Text = objProfileBase.GetPropertyValue("Address").ToString();
                    txtDBServerName.Text = objProfileBase.GetPropertyValue("DBServerName").ToString();
                    txtDBName.Text = objProfileBase.GetPropertyValue("DBName").ToString();
                    txtDBUserID.Text = objProfileBase.GetPropertyValue("DBUserID").ToString();
                    txtDBPassword.Text = objProfileBase.GetPropertyValue("DBPassword").ToString();
                    txtFromDomain.Text = objProfileBase.GetPropertyValue("FromDomain").ToString();
                    txtEVMTAName.Text = objProfileBase.GetPropertyValue("MtaName").ToString();
                    txtEFromName.Text = objProfileBase.GetPropertyValue("FromName").ToString();
                    txtEReplyEmail.Text = objProfileBase.GetPropertyValue("ReplyEmail").ToString();
                    if (objProfileBase.GetPropertyValue("AccType").ToString() != string.Empty)
                        ddlEAdminAccType.Text = objProfileBase.GetPropertyValue("AccType").ToString();
                    upEditClient.Update();
                }
                //swaraj on 2nd march 2010
                //to reset password
                if (e.CommandName == "Reset Password")
                {

                    MembershipProvider Mp = Membership.Providers["MPforResetPwd"];
                    MembershipUser Mu = Mp.GetUser(e.CommandArgument.ToString(), true);
                    string password = Mu.ResetPassword();
                    //message body
                    StringBuilder body = new StringBuilder();
                    body.Append("<HTML><BODY>");
                    body.Append("<table width=\"100%\"><tr><td align=\"left\" colspan=\"3\" style=\"height:4px; color:green;\"><h3></h3> <td></tr><tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("<tr><td colspan=\"3\"> Hi&nbsp;" + Mu.UserName.ToString() + ",</td></tr><tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("<tr><td colspan=\"3\">Welcome to 1Point</td></tr><tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("<tr><td colspan=\"3\">You can login in to your account at:</td></tr>");
                    body.Append("<tr><td colspan=\"3\"><a href=\"" + ConfigurationManager.AppSettings["LoginUrl"] + "\">Login</a></td></tr>");
                    body.Append("<tr><td colspan=\"3\"></td></tr><tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("\n<tr><td >Your new Pasword : &nbsp;&nbsp;" + password + "</td></tr> <tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("<tr><td colspan=\"3\">If there's anything we can do to help, please get in touch.</td></tr><tr><td colspan=\"3\">&nbsp;</td></tr>");
                    body.Append("<tr><td colspan=\"3\">Regards,</td></tr>");
                    body.Append("<tr><td colspan=\"3\">1Point team</td></tr>");
                    body.Append("<tr><td colspan=\"3\">" + ConfigurationManager.AppSettings["SuperAdminEmail"].ToString().Split(',').GetValue(0) + "</td></tr>");

                    MailMessage SendMessageToUser = new MailMessage();
                    SendMessageToUser.To.Add(Mu.Email.ToString());
                    SendMessageToUser.Body = body.ToString();
                    SendMessageToUser.Subject = "Your new password";

                    SendMessageToUser.IsBodyHtml = true;
                    //add cc of superadmin emails
                    ConfigurationManager.AppSettings["SuperAdminEmail"].ToString().Split(',').ToList().ForEach(delegate(string mail) { SendMessageToUser.CC.Add(mail); });
                    SmtpClient SmtpMail = new SmtpClient();
                    SmtpMail.Send(SendMessageToUser);
                    lblMsg.Style.Add("color", "Green");
                    lblMsg.Text = "Your new password has been emailed to  " + Mu.Email.ToString();
                }
                if (e.CommandName == "Unlock")
                {
                    objMembershipUser = Membership.GetUser(HiddenUserName.Value);
                    objMembershipUser.UnlockUser();
                    FillGrid(string.Empty);
                    lblMsg.Style.Add("color", "Green");
                    lblMsg.Text = string.Format("Client : {0} account is successfully unlocked!!!", HiddenUserName.Value.ToString());
                }
                if (e.CommandName.ToLower() == "delete")
                {
                    hdfield.Value = e.CommandArgument.ToString();
                    DeleteModalPopup.Show();
                }
            }
            catch (Exception ex)
            {

                throw ex;
            }
        }
Esempio n. 6
0
        protected void btnGeraClasse_Click(object sender, EventArgs e)
        {
            //Pega o usuário logado...
            currentUser = Membership.GetUser();
            DataTable dt1;

            //Testa a conexão com o Servidor Selecionado...
            //Se não existir informa o usuario...
            if (lstHost.SelectedItem == null)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" + "Não foi selecionado o Servidor, por gentileza, selecione e tente novamente! </span>";
                return;
            }
            if (lstTipoClasse.SelectedItem == null)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" + "Não foi selecionado a Classe, por gentileza, selecione e tente novamente! </span>";
                return;
            }
            //MPS 27/10/2014
            bool connOK = false;
            if (lstHost.SelectedItem.ToString().IndexOf(" [") > 0)
                connOK = MPSfwk.WMI.testeConnWMI(lstHost.SelectedItem.ToString().Substring(0, lstHost.SelectedItem.ToString().IndexOf(" [")), currentUser.UserName, currentUser.GetPassword());
            else
                connOK = MPSfwk.WMI.testeConnWMI(lstHost.SelectedItem.ToString(), currentUser.UserName, currentUser.GetPassword());

            if (!connOK)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>Não foi possivel se conectar ao Servidor selecionado! Talvez o IP/Host selecionado não foi encontrado, ou usuário sem privilégio.  </span>";
                return;
            }

            string classe = lstTipoClasse.SelectedItem.ToString();
            string classe_SEL = lstTipoClasse.SelectedValue.ToString();
            //MPS 27/10/2014
            string server= "";
            if (lstHost.SelectedItem.ToString().IndexOf(" [") > 0)
                server = lstHost.SelectedItem.ToString().Substring(0, lstHost.SelectedItem.ToString().IndexOf(" ["));
            else
                server = lstHost.SelectedItem.ToString();

            try
            {
                //Chama a função para o Gerenciamento WMI remoto/local
                // se ocorre erro, tenta a conexão local...
                if (classe_SEL == "Win32_GroupUser")
                {
                    dt1 = MPSfwk.WMI.GroupMembers(  server,
                                                    currentUser.UserName,
                                                    currentUser.GetPassword());
                }
                else
                {
                    dt1 = MPSfwk.WMI.dtlistaClasse( classe,
                                                    classe_SEL,
                                                    server,
                                                    currentUser.UserName,
                                                    currentUser.GetPassword());
                }

                GridView2.DataSource = dt1;
                GridView2.DataBind();

                string dthr = DateTime.Now.ToString("yyyyMMddHHmmss");
                string arq = ConfigurationManager.AppSettings["XMLData"] + currentUser.UserName.Replace("\\", "_") + "\\" + classe + "_" + server + "_" + dthr + ".xml";
                dt1.WriteXml(arq);

                //Grava o XML no banco de Dados...
                XmlDocument xmlSave = new XmlDocument();
                xmlSave.Load(arq);
                SqlServer.AuditXML.Gravar(classe, server, dthr, xmlSave);

                //Grava e disponibiliza o XML...
                dtSel2.Visible = true;
                dtSel2.Text = dthr;
                String strUrl = HttpContext.Current.Request.Url.AbsoluteUri.Replace("Audits.aspx", "");
                string str_lnk = currentUser.UserName.Replace("\\", "_") + "\\" + classe + "_" + server + "_" + dthr + ".xml";
                string str_href = strUrl + "Xml_Data\\" + str_lnk;
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" +
                                        "Geração efetuada com sucesso em: <a href=" + str_href.Replace(" ", "%20") + ">" + str_lnk +
                                        "</a>   </span>";

            }
            catch (UnauthorizedAccessException was)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" + "Ocorreu um erro - Acesso não autorizado: " + was.Message + "  </span>";
            }
            catch (ManagementException ex)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" + "Ocorreu um erro de gerenciamento: " + ex.Message + "  </span>";
            }
            catch (Exception eg)
            {
                divMessage.InnerHtml = "<span id='msg' style='color:#FF3300;font-size:Smaller;font-weight:bold;'>" + "Ocorreu um erro: " + eg.Message + "  </span>";
            }

            //Limpa e atualiza a ultima Data Gerada...
            drpGeracoes.Items.Clear();

            // Atualiza a lista de datas de geracao...
            DS_AuditXML.Util_list.ListaDTsGeracao(ordBY, aud, lstHost, lstTipoClasse, drpGeracoes, drpGeracoes);
        }
Esempio n. 7
0
        /// <summary>
        /// Sends the user password reminder.
        /// </summary>
        /// <param name="username">The username.</param>
        /// <returns></returns>
        public static void SendUserPasswordReminderNotification(MembershipUser user, string passwordAnswer)
        {
            if (user == null)
                throw new ArgumentNullException("user");

            //load notification plugins
            NotificationManager nm = new NotificationManager();
            nm.LoadNotificationTypes();

            //load template and replace the tokens
            string template = nm.LoadNotificationTemplate("PasswordReminder");
            string subject = nm.LoadNotificationTemplate("PasswordReminderSubject");
            string displayname = ITUser.GetUserDisplayName(user.UserName);

            nm.SendNotification(user.UserName, subject, String.Format(template, HostSetting.GetHostSetting("ApplicationTitle"), user.GetPassword(passwordAnswer)));
        }
        public override void UpdateUser(MembershipUser user)
        {
            Models.User u = Models.User.GetByEmail(user.Email);
            u.Password = user.GetPassword();
            u.LastAccess = user.LastActivityDate;
            u.IsActive = user.IsApproved;
            u.CreatedAt = user.CreationDate;

            Models.User.SaveUser(u);
        }