Lição 4

Erros comuns com JWT

Evite problemas comuns de validação e manipulação de JSON Web Token.

Bugs de JWT costumam vir de tratar um token compacto como se fosse registro de sessão confiável. O formato é simples, mas as regras de validação importam.

Confiar no payload decodificado

O payload é JSON legível. Qualquer um pode montar uma string com formato de token e campos arbitrários. Nunca conceda acesso só porque um payload decodificado tem admin: true ou um sub familiar.

Ignorar audience e issuer

Um token emitido para uma API não deve funcionar automaticamente em outra. Sempre cheque iss e aud conforme seu provedor de identidade e o limite do serviço.

Aceitar algoritmos inesperados

Aplicações devem permitir só os algoritmos que esperam. Bugs de confusão de algoritmo ocorrem quando o verificador aceita um valor de header que muda como assinaturas são checadas.

Tratar expiração de forma errada

Cheque exp contra o horário atual em segundos, não milissegundos. Defina também quanto skew de relógio o sistema tolera, especialmente entre serviços distribuídos.

Vazar tokens

JWTs são credenciais bearer com frequência. Quem tiver o token pode agir como o sujeito até expirar ou ser revogado. Evite tokens em logs, capturas de tela, issue trackers ou eventos de analytics.

Resumo

Decodificar ensina o que o token diz; verificar prova o que sua aplicação aceita. Centralize validação no backend e trate o decodificador como ferramenta de inspeção, não de autorização.

Revise claims comuns no Decodificador JWT e confirme no seu middleware se iss, aud e exp batem com a política real.

Voltar à visão geral do curso