public IActionResult Logar([FromBody] UsuarioParaLoginDto usuario) { if (!_repository.Autentica(usuario)) { var erro = new { Mensagem = "Usuário ou senha incorretos", Status = "400" }; return(BadRequest(erro)); } var claims = new[] { new Claim(ClaimTypes.Email, usuario.Email) }; var chave = new SymmetricSecurityKey( Encoding.UTF8.GetBytes(_configuration["ChaveDeSeguranca"])); var credenciais = new SigningCredentials(chave, SecurityAlgorithms.HmacSha256); var token = new JwtSecurityToken( issuer: "DesafioApi", audience: "Consumidor", claims: claims, expires: DateTime.Now.AddMinutes(30), signingCredentials: credenciais ); return(Ok(new { token = new JwtSecurityTokenHandler().WriteToken(token) })); }