Exemplo n.º 1
0
        public override void OnAuthorization(HttpActionContext filterContext)
        {
            if (!Ativo)
            {
                return;
            }

            var servicoAutenticacao = new ServiceAutenticacao();

            var token = servicoAutenticacao.ObterTokenCabecalho(filterContext.Request);

            if (servicoAutenticacao.Autenticar(token) != null)
            {
                var principal = servicoAutenticacao.CriarIdentidadePrincipal(token);
                if (Autorizar(token, principal))
                {
                    filterContext.RequestContext.Principal = principal;
                    Thread.CurrentPrincipal = principal;
                }
                else
                {
                    AcessoNaoAutorizado(filterContext);
                }
            }
            else
            {
                AcessoNaoAutorizado(filterContext);
            }
        }
Exemplo n.º 2
0
        public IHttpActionResult Autenticar(AutenticacaoDto login)
        {
            var usuario = serviceAutenticacao.Autenticar(login);

            if (usuario == null)
            {
                return(BadRequest("Usuário ou senha incorretos."));
            }

            var response = Request.CreateResponse(HttpStatusCode.OK);

            response.Headers.Add(
                "Authorization",
                String.Format("Bearer {0}", serviceAutenticacao.GerarToken(usuario).GerarJwt()));

            return(new ResponseMessageResult(response));
        }