Ejemplo n.º 1
0
        public static bool Autenticar(string usuario, string password)
        {
            //Declaramos la sentencia SQL
            string sql = @"SELECT COUNT(*)
                       FROM Usuario
                       WHERE login = @usuario AND contraseña = @password";

            //utilizamos using para indicarle al compilador que dentro de este bloque se llame al Método Dispose.
            //para así liberar recursos cuanto antes mejor. en este caso no ocupamos decirle que cierre la conexión a la base de datos.
            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["centro_saludConnectionString1"].ToString()))
            {
                conn.Open();

                SqlCommand command = new SqlCommand(sql, conn);
                command.Parameters.AddWithValue("@usuario", usuario);
                string hash = Encripta.EncodePassword(string.Concat(usuario, password));
                command.Parameters.AddWithValue("@password", hash);

                int count = Convert.ToInt32(command.ExecuteScalar());

                if (count == 0)
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Create([Bind(Include = "idProfesor,nombreProfesor,apellidoProfesor,rol,contrasena,nombreUsuario,emailProfesor,estado")] Profesor profesor)
        {
            int profesorActivo = (from d in db.Profesor where d.emailProfesor == profesor.emailProfesor select d.idProfesor).FirstOrDefault();

            if (profesorActivo != 0)
            {
                ViewBag.Error = "Este correo ya se encuentra registrado";
                return(View(profesor));
            }
            ViewBag.Error = profesorActivo;

            String pass        = RandomString(5);
            String passEncrypt = Encripta.GetSHA256(pass);

            profesor.contrasena = passEncrypt;
            if (ModelState.IsValid)
            {
                sendEmail(profesor.emailProfesor, pass);
                //encriptar aqui
                db.Profesor.Add(profesor);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }


            return(View(profesor));
        }
 public AdminBO()
 {
     encripta   = new Encripta();
     proceso    = new List <Admin>();
     objArchivo = new AdminDAO();
     proceso    = objArchivo.leerArchivo();
 }
        protected void gvUsuario_Actualizar(object sender, GridViewUpdateEventArgs e)
        {
            GridViewRow row = gv_Usuarios.Rows[e.RowIndex];

            gv_Usuarios.EditIndex = -1;
            String codigo = row.Cells[1].Text;
            String nombre = row.Cells[2].Text;
            //Encripta la contraseña 123456
            // String cel1 = ((TextBox)(row.Cells[2].Controls[0])).Text;
            String cel2     = ((TextBox)(row.Cells[3].Controls[0])).Text;
            String password = Encripta.EncodePassword(String.Concat(nombre, cel2));   //Encripta.EncodePassword(string.Concat(,"123456"));

            DropDownList comboPerfil = (DropDownList)gv_Usuarios.Rows[e.RowIndex].Cells[5].FindControl("ddl_perfiles");
            String       perfil      = comboPerfil.SelectedValue;

            per = iPerf.getPorCriterio <Perfil>(perfil).First();

            DropDownList comboEstado = (DropDownList)gv_Usuarios.Rows[e.RowIndex].Cells[4].FindControl("ddl_estados");
            String       estado      = comboEstado.SelectedItem.Text;

            String email = ((TextBox)(row.Cells[6].Controls[0])).Text;

            DropDownList comboAlertas = (DropDownList)gv_Usuarios.Rows[e.RowIndex].Cells[7].FindControl("ddl_alertas");
            String       alerta       = comboAlertas.SelectedItem.Text;

            ActualizarUsuarios(nombre, password, estado, per.codigoPerfil, email, alerta);
            llenar(nombre);
        }
Ejemplo n.º 5
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            //generamos la clase ex para extraer de busqueda de tipo de cargo
            PerfilRepository ex = new PerfilRepository();

            string rut       = this.rut.Text;
            string nombre    = this.nombre.Text;
            string appaterno = this.appaterno.Text;
            string apmaterno = this.amaterno.Text;
            string email     = this.email.Text;
            string pass      = this.contraseña.Text;
            //se extrae el tipo de cargo de la tabla perfil mediante el id que proporciona el dropdownlist
            String tipoUsuario = ex.tipoCargoExtraer(Convert.ToInt32(this.DropDownList1.Text));
            int    estado      = 1;
            int    idperfil    = Convert.ToInt32(this.DropDownList1.Text);

            // se genera la clase encri la cual tiene el proceso de encriptacion de la contraseña
            Encripta encri = new Encripta();

            // se genera la clase usuario la cual se llenara con los datos ingresados y se ocupa el proceso de encriptacion
            //que se genero anteriormente
            Usuario u = new Usuario(rut, nombre, appaterno, apmaterno, email, encri.Encriptar(pass), tipoUsuario, estado, idperfil);
            //se crea la clase usuario que lleva el proceso insertaUsuario para entregar los datos para la insercion
            UsuariosRepository usuario = new UsuariosRepository();

            usuario.insertaUsuario(u);
        }
Ejemplo n.º 6
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            string             rut        = this.rut.Text.Replace("-", "");
            string             contraseña = this.pass.Text;
            UsuariosRepository lista      = new UsuariosRepository();
            Encripta           en         = new Encripta();

            string contraEncriptada = en.Encriptar(contraseña);

            if (lista.listaUsuario(rut, contraseña) == false)
            {
                Label1.Text = "no";
            }
            else
            {
                if (lista.privilegio(rut, contraseña) == "administrador")
                {
                    Session.Add("rut_administrador", rut);
                    Response.Redirect("homeAdministrador.aspx");
                }
                else if (lista.privilegio(rut, contraseña) == "cajero")
                {
                    Label1.Text = "Cajero";
                }
                else
                {
                    Label1.Text = "otro privilegio";
                }
            }
        }
Ejemplo n.º 7
0
        public ActionResult CambiarContraseña(string contrasena)
        {
            var session = (Models.Profesor)Session["User"];

            try
            {
                using (prueba1Entities db = new prueba1Entities())
                {
                    var user = (from d in db.Profesor
                                where d.idProfesor == session.idProfesor select d).FirstOrDefault();

                    if (user == null)
                    {
                        return(View("CambiarContraseña"));
                    }

                    user.contrasena = Encripta.GetSHA256(contrasena);


                    db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();

                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                return(RedirectToAction("ServerError", "Error"));
            }
        }
Ejemplo n.º 8
0
        public ActionResult Login(string email, string password)
        {
            if (!string.IsNullOrEmpty(email) && !string.IsNullOrEmpty(password))
            {
                String pass = Encripta.GetSHA256(password);
                var    user = db.Profesor.FirstOrDefault(e => e.emailProfesor == email && e.contrasena == pass);



                if (user != null)
                {
                    Session["User"]     = user;
                    Session["Nombre"]   = user.nombreProfesor + " " + user.apellidoProfesor;
                    Session["RolVista"] = user.rol;



                    return(RedirectToAction("Index"));
                }
                else
                {
                    ViewBag.Error = "No se encuentra un usuario";
                    return(View("Login"));
                }
            }
            else
            {
                ViewBag.Error = "Debes llenar los campos para iniciar sesión";
                return(View("Login"));
            }
        }
Ejemplo n.º 9
0
        protected void crearUsuario(object sender, EventArgs e)
        {
            try
            {
                List <Usuario> existen = iUs.getByCriterio <Usuario>("", "", txt_username.Text);
                if (existen.Count == 0)
                {
                    if (ddl_perfil.SelectedValue == "0")
                    {
                        String msj = "Seleccione un perfil.";
                        this.Page.Response.Write("<script language='JavaScript'>window.alert('" + msj + "');</script>");
                    }
                    else
                    {
                        usuario       = new Usuario();
                        usuario.login = txt_username.Text.Trim();
                        password      = txt_password.Text.Trim();
                        String hash = Encripta.EncodePassword(string.Concat(usuario.login, password));
                        usuario.contraseña    = hash;
                        usuario.fechaVigencia = DateTime.Now.Date;
                        //verificar el tipo del estado
                        usuario.estado = true;
                        Persona p = iPers.getByCriterio <Persona>("", "", txt_persona.Text).First <Persona>();
                        usuario.codigoPersona = p.codigoPersona;
                        usuario.codigoUsuario = generarCodigoUsuario();
                        usuario.mail          = txt_correo.Text;
                        usuario.recibeAlertas = cheq_alerta.Checked;

                        perf           = iPerf.getPorCriterio <Perfil>(ddl_perfil.SelectedValue.ToString()).First <Perfil>();
                        usuario.perfil = perf.codigoPerfil;

                        iUs.save <Usuario>(usuario);
                        String msj = "El usuario ha sido creado correctamente.";
                        Intermediario.confirmarCambios();
                        this.Page.Response.Write("<script language='JavaScript'>window.alert('" + msj + "');</script>");

                        txt_apellido.Text   = "";
                        txt_codigo.Text     = "";
                        txt_nombre.Text     = "";
                        txt_password.Text   = "";
                        txt_persona.Text    = "";
                        txt_username.Text   = "";
                        txt_correo.Text     = "";
                        cheq_alerta.Checked = false;
                    }
                }
                else
                {
                    String msj = "El nombre de usuario ingresado ya existe. Por favor ingrese otro usuario.";
                    this.Page.Response.Write("<script language='JavaScript'>window.alert('" + msj + "');</script>");
                    txt_username.Text = "";
                    txt_password.Text = "";
                }
            }
            catch (Exception) {
            }
        }
Ejemplo n.º 10
0
 public Login()
 {
     InitializeComponent();
     log               = new AdminBO();
     logU              = new UsuarioBO();
     ubo               = new UsuarioBO();
     pbo               = new PersonaBO();
     encripta          = new Encripta();
     txtUsuAdmin.Text  = "Admin";
     txtPassAdmin.Text = "Admin123*";
 }
Ejemplo n.º 11
0
        protected void Button2_Click(object sender, EventArgs e)
        {
            Encripta en          = new Encripta();
            Random   r           = new Random(DateTime.Now.Millisecond);
            int      nAleatorio3 = r.Next(00000, 99999);

            if (usu.buscaContraseña(en.Encriptar(Convert.ToString(nAleatorio3))) == false)
            {
                this.contraseña.Text = Convert.ToString(nAleatorio3);
            }

            // this.Label20.Text = Convert.ToString(nAleatorio3);
        }
Ejemplo n.º 12
0
        public async Task <IActionResult> GetUsuario(string login, string psw)
        {
            try
            {
                Encripta enc     = new Encripta();
                string   desc    = enc.EncriptaStr(psw);
                var      usuario = await repositorioUsuario.GetUsuario(login, desc);

                return(Ok(usuario));
            }
            catch (Exception)
            {
                return(BadRequest());
            }
        }
Ejemplo n.º 13
0
        private bool isValidPassword(string username, string password)
        {
            Login user    = getUserFromDB(username);
            bool  isValid = false;

            if (!string.IsNullOrEmpty(user.user))
            {
                byte[] hashedPassword = Encripta.HashPasswordWithSalt(Encoding.UTF8.GetBytes(password), user.salt);

                if (hashedPassword.SequenceEqual(user.pass))
                {
                    isValid = true;
                }
            }

            return(isValid);
        }
Ejemplo n.º 14
0
        public ActionResult RecuperarContraseña(string correo)
        {
            try
            {
                using (prueba1Entities db = new prueba1Entities())
                {
                    var user = (from d in db.Profesor
                                where d.emailProfesor == correo && d.estado == "Activo"
                                select d).FirstOrDefault();

                    if (user == null)
                    {
                        ViewBag.Error = "No se encuentra ningún usuario registrado o activo con la dirección email: " + correo;
                        return(View("RecuperarContraseña"));
                    }

                    string contrasena = RandomString(6);

                    MailMessage mensaje = new MailMessage("*****@*****.**", correo, "Cambio de Contraseña",
                                                          "Se solicito un cambio de contraseña, su nueva contraseña es " + contrasena +
                                                          ". Favor iniciar sesión en el sistema y cambiar la contraseña");

                    SmtpClient server = new SmtpClient("smtp.gmail.com");
                    server.EnableSsl = true;

                    server.UseDefaultCredentials = false;
                    server.Port        = 587;
                    server.Credentials = new System.Net.NetworkCredential("*****@*****.**", "portalanalisis123");
                    server.Send(mensaje);


                    user.contrasena = Encripta.GetSHA256(contrasena);


                    db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();

                    return(RedirectToAction("Login"));
                }
            }
            catch (Exception ex)
            {
                return(RedirectToAction("ServerError", "Error"));
            }
        }
Ejemplo n.º 15
0
    protected void btnIngresar_Click(object sender, EventArgs e)
    {
        try
        {
            if (txtIngresoRut.Text == "")
            {
                return;
            }
            Formatos objFor = new Formatos();
            string   crut   = "";
            string   pasww;

            Validaciones objValida   = new Validaciones();
            string       RutValidado = objValida.ValidaRut(txtIngresoRut.Text);
            txtIngresoRut.Text       = RutValidado;
            Session["RutFormateado"] = RutValidado;
            if (RutValidado == "n")
            {
                // Response.Write("<script>alert('Rut no valido')</script>");
                Page.ClientScript.RegisterStartupScript(this.GetType(), "", "MensageTransaccionRuta('Rut no valido','defaultv3.aspx');", true);
                txtIngresoRut.Text = "";
            }
            else
            {
                crut = objFor.QuitaFormatoRut(txtIngresoRut.Text);

                txtIngresoRut.Text = Session["RutFormateado"].ToString();
                pasww = txtPasword.Text;
                string strXmlAutentica;
                //<ParametrosIn Rut="1106757" Paswword="1111" />
                //11067573
                strXmlAutentica = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
                strXmlAutentica = "<ParametrosIn Rut=\"" + crut + "\" Password=\"" + pasww + "\" />";

                //localhost.Service objService = new localhost.Service();
                //string XmlAutentica = objService.AutenticaUsuario(crut, pasww);

                Service  objService   = new Service();
                Encripta objEnc       = new Encripta();
                string   rutencr      = objEnc.Encrit(pasww);
                string   XmlAutentica = objService.AutenticaUsuario(crut, pasww);
                //string XmlAutentica = "<ParametrosOut><Autorizacion cCodigo=\"0\" Mensaje=\"Autorizado\"/><Perfiles><Perfil cPerfil=\"1\" tPetfil=\"Socio\"/><Perfil cPerfil=\"2\" tPetfil=\"Ahorrante\"/></Perfiles></ParametrosOut>";
                //txtPasword.Text = XmlAutentica;
                ////////////////////////
                XmlDocument xDoc = new XmlDocument();
                xDoc.LoadXml(XmlAutentica);
                string      strMensaje = "";
                string      strcCodigo = "";
                XmlNodeList lista      = xDoc.GetElementsByTagName("Autorizacion");
                // XmlNodeList lista = ((XmlElement)personas[0]).GetElementsByTagName("Producto");
                foreach (XmlElement nodo in lista)
                {
                    strcCodigo = nodo.GetAttribute("cCodigo");
                    strMensaje = nodo.GetAttribute("Mensaje");
                    //cCodigo = 1 "aceptado 2 Rechazado
                }
                ////////////////////////
                string prueba = strcCodigo;
                if (strcCodigo == "0")
                {
                    //Response.Write("<script>alert('Socio existe')</script>");
                    //carga variables de session
                    string strXmlPersonas = objService.TraePersonas(Int32.Parse(crut));

                    xDoc.LoadXml(strXmlPersonas);

                    string      idCliente      = "";
                    string      NombreCompleto = "";
                    string      NumeroControl  = "";
                    XmlNodeList lista2         = xDoc.GetElementsByTagName("Persona");
                    XmlNodeList lista3         = ((XmlElement)lista2[0]).GetElementsByTagName("DatosPersonales");

                    foreach (XmlElement nodo in lista3)
                    {
                        XmlNodeList idCliente2 = nodo.GetElementsByTagName("IdCliente");
                        idCliente = idCliente2[0].InnerText;
                        XmlNodeList objNombre = nodo.GetElementsByTagName("NombreCompleto");
                        NombreCompleto = objNombre[0].InnerText;
                        XmlNodeList objControl = nodo.GetElementsByTagName("cControl");
                        NumeroControl = objControl[0].InnerText;
                    }
                    //Response.Write (NumeroControl);
                    //cargado Session["RutFormateado"];
                    Session["NombreCompleto"] = NombreCompleto;
                    Session["IdCliente"]      = idCliente;
                    Session["PaginaActiva"]   = "1";

                    Session["CargaPagina"] = "1";

                    //fin carga
                    //if (Int32.Parse(NumeroControl) == 1)
                    //    Response.Redirect("CambioPasword.aspx");

                    // Response.Redirect("CargaSaldos.aspx?crut=" + crut);

                    Response.Redirect("FondoInicio.aspx?crut=" + crut);
                }
                else
                {
                    // Response.Write("<script Language=\"javascript\" runat=\"server\">alert('Socio no existe');window.location.href='http://" + Session["IpServidor"].ToString() +"/sitiowebandescoop/default.aspx';</script>");
                    // Response.Write("<script>alert('Usuario Incorrecto');window.location='default.aspx';</script>");
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "", "MensageTransaccionRuta('Usuario Incorrecto','Defaultv3.aspx');", true);
                    return;
                }


                txtIngresoRut.Text = "";
                txtPasword.Text    = "";
                txtPasword.Focus();
            }
        }
        catch (Exception ex)
        {
            Response.Write("<script>alert('" + ex.Message.Normalize().Replace("'", "") + "');window.location='defaultv3.aspx';</script>");
        }
    }