Ejemplo n.º 1
0
        public IActionResult GetAutentificacion([FromBody] LoginServer oLoginServer)
        {
            IActionResult response = Unauthorized();

            if (oLoginServer.Usuario == null || oLoginServer.Contrasenia == null)
            {
                return(NotFound("Usuario no encontrado"));
            }
            if (oLoginServer.ValidaInicioSesion())
            {
                //oLoginResponse = new LoginResponse();
                PEMUsuarioResponse oUsuario = null;
                using (ILoginDominio oDominio = new LoginDominio())
                {
                    oUsuario = oDominio.TraerUsuario(oLoginServer.Usuario, oLoginServer.Contrasenia);
                }
                if (oUsuario != null)
                {
                    var tokenStr = GenerarTokenJwt.GenerarteTokenJwt(oUsuario);
                    response = Ok(new { token = tokenStr.TokenJwt });
                }
            }
            else
            {
                response = NotFound("Inicio de Sesion Fallido.");
            }
            return(response);
        }
Ejemplo n.º 2
0
        public PEMUsuarioResponse TraerUsuario(string usuario, string password)
        {
            PEMUsuarioResponse oUsuario = null;

            using (ILoginRepositorio oRepositorio = new LoginRepositorio())
            {
                oUsuario = oRepositorio.TraerUsuario(usuario, password);
            }

            return(oUsuario);
        }
Ejemplo n.º 3
0
        public PEMUsuarioResponse TraerUsuario(string usuario, string password)
        {
            PEMUsuarioResponse      oUsuario   = null;
            string                  sp         = StoredProcedure.USP_USUARIO_AUTH;
            List <SqlParameterItem> parametros = new List <SqlParameterItem>();

            parametros.Add(new SqlParameterItem("@x_nCodUsuSis", SqlDbType.VarChar, usuario));
            parametros.Add(new SqlParameterItem("@x_cConUsuSis", SqlDbType.VarChar, password));

            using (SqlHelperWS oSqlHelperWS = new SqlHelperWS(dbContext.PLAPERUMONEY()))
            {
                using (SqlDataReader reader = oSqlHelperWS.ExecuteReader(sp, parametros))
                {
                    oUsuario = reader.Select <PEMUsuarioResponse>(DesdeDataReader).First();
                }
            }
            return(oUsuario);
        }
Ejemplo n.º 4
0
        public bool Autentificacion(string usuario, string password)
        {
            bool respuesta = false;
            PEMUsuarioResponse      oUsuario   = null;
            string                  sp         = StoredProcedure.USP_USUARIO_AUTH;
            List <SqlParameterItem> parametros = new List <SqlParameterItem>();

            parametros.Add(new SqlParameterItem("@x_nCodUsuSis", SqlDbType.VarChar, usuario));
            parametros.Add(new SqlParameterItem("@x_cConUsuSis", SqlDbType.VarChar, password));

            using (SqlHelperWS oSqlHelperWS = new SqlHelperWS(dbContext.PLAPERUMONEY()))
            {
                using (SqlDataReader reader = oSqlHelperWS.ExecuteReader(sp, parametros))
                {
                    oUsuario = reader.Select(DesdeDataReader).FirstOrDefault();
                }
            }

            respuesta = oUsuario != null ? true:false;
            return(respuesta);
        }
Ejemplo n.º 5
0
        public static PEMUsuarioResponse GenerarteTokenJwt(PEMUsuarioResponse oUsuario)
        {
            var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("Pues aunque a primera vista pudiera parecerlo, no lo es ;"));
            var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256);
            var claims      = new[]
            {
                new Claim(JwtRegisteredClaimNames.Sub, oUsuario.Codigo),
                new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
            };

            var token = new JwtSecurityToken(
                issuer: "issuer",
                audience: "issuer",
                claims,
                expires: DateTime.Now.AddMinutes(120),
                signingCredentials: credentials
                );

            var encodeToken = new JwtSecurityTokenHandler().WriteToken(token);

            oUsuario.TokenJwt = encodeToken;
            return(oUsuario);
        }