Exemplo prático
Se exp for menor que o tempo Unix atual, o token está expirado mesmo que o cabeçalho e o payload decodifiquem sem problemas.
Cole um token JWT abaixo para decodificar o cabeçalho e a carga útil. A decodificação não verifica a assinatura.
Nota: esta ferramenta decodifica apenas. Não valida nem verifica assinaturas.
JWT (JSON Web Token) é um formato de token compacto usado para autenticação e autorização.
Um JWT geralmente tem três partes: cabeçalho, carga útil e assinatura. Esta ferramenta decodifica o cabeçalho e a carga localmente em seu navegador e não verifica a assinatura.
Entenda o workflow por trás desta ferramenta e o que revisar depois.
Um processo atento à segurança para separar estrutura do token, validação de declarações, verificação de assinatura e decisões de autorização.
Um processo de codificação que evita erros de alfabeto e bytes e nunca confunde declarações JWT legíveis com uma identidade verificada.
Decodificar um JWT ajuda a revisar claims e expiração, mas não verifica que o token é confiável.
Revise exp, iat, nbf, fuso horário e clock skew antes de depurar sessões.
Confirme aud, iss, tenant, client_id e ambiente contra o serviço validador.
Revise scopes, roles, permissões e flags quando uma requisição autenticada não é autorizada.
Conteúdo decodificado não é verificação. Não trate token sem verificação como identidade válida.
Se exp for menor que o tempo Unix atual, o token está expirado mesmo que o cabeçalho e o payload decodifiquem sem problemas.
Um token decodificado pode conter claims forjados. Sem verificar a assinatura contra o algoritmo e a chave esperados, a identidade não está provada.
Verifico iss, aud, exp, nbf e o desvio de relógio em conjunto, porque a maioria das falhas com JWT são incompatibilidades de contrato, não problemas de decodificação.
Você também pode achar essas ferramentas úteis.