Ejemplo n.º 1
0
 public async Task <UsuarioDTO> Login(VMLogin vmLogin)
 {
     try
     {
         vmLogin.Password = Encriptacion.GetSHA256(vmLogin.Password);
         UsuarioDTO usuario = mapper.Map <Usuario, UsuarioDTO>(await db.Usuarios.Include(i => i.Proveedor)
                                                               .SingleAsync(u => u.UsuarioNombre == vmLogin.Usuario &&
                                                                            u.Password == vmLogin.Password));
         return(usuario);
     }
     catch (Exception e)
     {
         return(null);
     }
 }
Ejemplo n.º 2
0
        public async Task <UsuarioDTO> Agregar(UsuarioDTO usuarioDTO)
        {
            try
            {
                string passInicial = Generador.GenerarPassword(25);
                usuarioDTO.Token = Generador.GenerarToken();
                Usuario usuario = mapper.Map <UsuarioDTO, Usuario>(usuarioDTO);
                usuario.Password = Encriptacion.GetSHA256(passInicial);
                Proveedor proveedorBuscado = null;
                if (usuarioDTO.Proveedor != null)
                {
                    proveedorBuscado = await db.Proveedores.FindAsync(usuarioDTO.Proveedor.Id);
                }
                if (proveedorBuscado != null && usuarioDTO.TipoUsuario == SD.TipoUsuario.ProveedorIngPlt.ToString())
                {
                    //guardar en BD
                    db.Entry(proveedorBuscado).State = EntityState.Unchanged;
                    usuario.Proveedor = proveedorBuscado;
                    var addUsuario = await db.Usuarios.AddAsync(usuario);

                    await db.SaveChangesAsync();

                    UsuarioDTO uFinal = mapper.Map <Usuario, UsuarioDTO>(addUsuario.Entity);
                    uFinal.PassInicial = passInicial;
                    return(uFinal);
                }
                else if (usuarioDTO.TipoUsuario != SD.TipoUsuario.ProveedorIngPlt.ToString())
                {
                    var addUsuario = await db.Usuarios.AddAsync(usuario);

                    await db.SaveChangesAsync();

                    UsuarioDTO uFinal = mapper.Map <Usuario, UsuarioDTO>(addUsuario.Entity);
                    uFinal.PassInicial = passInicial;
                    return(uFinal);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception e)
            {
                return(null);
            }
        }
Ejemplo n.º 3
0
        public string Authenticate(LoginRequest login)
        {
            GeneralResponse res = new GeneralResponse();

            if (login == null)
            {
                res.Message    = "Bad Request";
                res.StatusCode = HttpStatusCode.BadRequest;
                return(JsonConvert.SerializeObject(res));
            }


            if (login.Username != "administrator")
            {
                res.Message    = "El usuario no existe";
                res.StatusCode = HttpStatusCode.Unauthorized;
                return(JsonConvert.SerializeObject(res));
            }
            Encriptacion encrip = new Encriptacion();
            //Normalmento las contraseñas estan encriptadas, por lo que comparo la contraseña encriptando el password ingresado
            bool isCredentialValid = (encrip.GetSHA256(login.Password) == "564c8a8d6c2acaf01702439cdcb4b8dc99c24883d249c00a39d87994c7b3d70e");

            if (isCredentialValid)
            {
                var token = TokenGenerator.GenerateTokenJwt(login.Username);
                res.Message    = "Correcto";
                res.Data       = token;
                res.StatusCode = HttpStatusCode.OK;
                return(JsonConvert.SerializeObject(res));
            }
            else
            {
                res.Message    = "El password es incorrecto";
                res.StatusCode = HttpStatusCode.Unauthorized;
                return(JsonConvert.SerializeObject(res));
            }
        }
Ejemplo n.º 4
0
        public async Task <UsuarioDTO> Actualizar(UsuarioDTO usuarioDTO)
        {
            try
            {
                if (usuarioDTO != null)
                {
                    Usuario usuarioDB = await db.Usuarios.Include(i => i.Proveedor).SingleAsync(s => s.Id == usuarioDTO.Id);

                    usuarioDB.Password = Encriptacion.GetSHA256(usuarioDTO.PassInicial);
                    var updateUsuario = db.Usuarios.Update(usuarioDB);
                    await db.SaveChangesAsync();

                    return(mapper.Map <Usuario, UsuarioDTO>(updateUsuario.Entity));
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception e)
            {
                return(null);
            }
        }
 public async Task <IActionResult> Contraseña(string pass)
 {
     //return Ok(Encriptacion.Encriptar(pass));
     return(Ok(Encriptacion.GetSHA256(pass)));
 }