Token assinado com claims (sub, exp, roles). Usado em APIs stateless. Cuidados: algoritmo fixo, expiração curta, storage seguro. Detalhes em Segurança de APIs com JWT.
JWT não é sessão — e isso é o ponto fraco comum
Diferente de sessão em banco, um JWT válido não pode ser "apagado" no servidor antes de expirar — só invalidado por lista de revogação, o que reintroduz o estado que o JWT tentava evitar. Se o requisito é logout imediato e confiável, considere sessão tradicional ou JWT de vida curta + refresh token.
- Nunca guarde dado sensível no payload — ele só é assinado, não é criptografado, qualquer um decodifica em base64
- Expiração curta (
exp) + refresh token reduz a janela de um token roubado - Veja o guia aplicado em segurança de APIs com JWT