Autenticação × JWT
Dois padrões que costumam ser trocados um pelo outro, e o que de fato os separa.
Em uma frase
Autenticação é o ato de provar identidade (sessão + cookie httpOnly é o default web). JWT é um formato de credencial assinada — útil como access token, péssimo como desculpa para token eterno no localStorage.
Critério a critério
O que é, exatamente?
- Autenticação
- O processo e o desenho de provar quem você é.
- JWT
- Um envelope assinado com claims e prazo.
Onde mora a prova, no desenho clássico?
- Autenticação
- Id opaco no cookie httpOnly; estado no servidor.
- JWT
- No próprio token que o cliente carrega (Bearer).
Logout imediato?
- Autenticação
- Apaga a sessão no store — credencial morre na hora.
- JWT
- Só de verdade com TTL curto, denylist ou rotação de chave.
Principal risco se guardar mal?
- Autenticação
- CSRF se o cookie não tiver SameSite/anti-CSRF.
- JWT
- XSS se o token estiver no localStorage — e cópia até o exp.
Precisa um do outro?
- Autenticação
- Não: sessão clássica autentica sem JWT.
- JWT
- Não: JWT sozinho não é 'auth completa' — ainda falta login, MFA, refresh.
Quando escolher cada um
Autenticação
App web com logout, revogação e cookie httpOnly — identidade no servidor.
Ver o conceito completoJWT
API/microsserviços ou OAuth em que verificação local de access curto importa.
Ver o conceito completoPor que confundem
Tratar JWT como sinônimo de autenticação. JWT é formato; autenticação é o problema. Dá para autenticar sem JWT e dá para usar JWT sem ter desenhado auth de verdade.