O que um decodificador de JWT mostra
Um JSON Web Token, ou JWT, é um formato compacto de token comumente usado em autenticação, autorização, sessões de API e fluxos de identidade. Um JWT normalmente tem três partes separadas por pontos: um header, um payload e uma signature. O header e o payload são JSON codificados em base64url, o que significa que podem ser decodificados e lidos sem uma chave secreta.
Este decodificador de JWT foca na inspeção. Ele formata o header e o payload, extrai claims comuns, mostra segmentos brutos e explica claims baseados em tempo como iat, nbf, e exp. Isso é útil ao depurar fluxos de login, chamadas de API, ambientes de teste, integrações OAuth ou problemas de tempo de vida do token.
- Leia o algoritmo do token e o tipo a partir do header.
- Inspecione issuer, subject, audience e claims personalizados do payload.
- Converta claims do tipo NumericDate em datas legíveis.
- Copie o header decodificado, o payload decodificado ou segmentos brutos do token.
Decodificar não é verificar
Decodificar um JWT diz o que o token contém. Não prova quem o criou, se o payload foi modificado, se a signature corresponde, ou se sua aplicação deve aceitá-lo. A verificação de assinatura requer o segredo correto, chave pública ou configuração JWKS e deve corresponder ao algoritmo esperado pela aplicação.
A parte de signature é diferente do header e do payload. É um valor criptográfico sobre o header e o payload codificados, não outro objeto JSON a ser decodificado. Esta página mostra a signature na saída de segmentos brutos quando ela existe, mas não solicita chaves de assinatura nem verifica o valor.
Considere esta página um inspetor, não uma autoridade. Um token decodificado ainda pode ser falso, expirado, não assinado, assinado com uma chave inesperada ou rejeitado pelo serviço que o emitiu.
Claims comuns de JWT
| Claim | Meaning | Uso típico |
|---|---|---|
iss | Issuer | O serviço ou provedor de identidade que emitiu o token. |
sub | Subject | O usuário, conta, cliente ou entidade ao qual o token se refere. |
aud | Audience | A API, aplicativo ou serviço que deve receber o token. |
iat | Emitido em | Quando o token foi criado. |
nbf | Não antes de | O token não deve ser aceito antes desse horário. |
exp | Expira em | O token não deve ser aceito após esse horário. |
Hábitos seguros de depuração
- Use tokens de teste sempre que possível em vez de tokens de usuários em produção.
- Não cole segredos de assinatura, chaves privadas ou credenciais de API em um decodificador.
- Verifique se o algoritmo é o esperado pela sua aplicação.
- Compare
issandaudcompare contra o serviço que você está depurando. - Lembre-se de que o relógio do navegador e do servidor podem diferir ao depurar problemas de expiração.
Ferramentas locais relacionadas
- Use o Base64 Encoder Decoder quando você precisa inspecionar strings base64 comuns. JWTs usam base64url, então este decodificador de JWT ainda é a opção mais segura para tokens completos.
- Use o JSON Beautifier quando você quiser formatar objetos de payload copiados fora do contexto do token.
- Use o Unix Timestamp Converter quando você precisa de uma verificação dedicada de timestamps para valores NumericDate como
iat,nbf, ouexp.
Perguntas Frequentes
Este decodificador de JWT verifica assinaturas?
Não. Ele decodifica o header e o payload para que você possa inspecioná-los, mas não verifica a signature nem prova que o token é confiável. A verificação requer o segredo do emissor, a chave pública ou a configuração JWKS. A signature não é exibida como um painel JSON decodificado porque é um valor criptográfico, não dados de claims legíveis; esta ferramenta a mostra apenas na saída de segmentos brutos.
Qualquer pessoa pode decodificar um JWT?
Sim, o header e o payload são codificados, não criptografados, a menos que seu sistema use um formato de token separado e criptografado. Não coloque segredos em payloads de JWT.
O que significa um JWT expirado?
Se o exp claim está no passado, um servidor normalmente deve rejeitar o token. Esta página pode mostrar o timestamp, mas o servidor é a autoridade final.
Por que a ferramenta aceita um prefixo Bearer?
Desenvolvedores frequentemente copiam tokens de um header Authorization: Bearer .... A ferramenta remove o prefixo antes de decodificar o corpo do token. Authorization: Bearer ... O utilitário remove o prefixo antes de decodificar o corpo do token.