nicetool.dev logo

O que é JWT?

JSON Web Token (JWT) é um padrão aberto (RFC 7519) que define uma maneira compacta e autônoma para transmitir informações com segurança entre as partes como um objeto JSON. Essas informações podem ser verificadas e confiáveis porque são assinadas digitalmente.

Estrutura do JWT

JWTs são strings compostas por três partes codificadas em Base64URL: o Cabeçalho (Algoritmo e Tipo), o Payload (Dados/Claims) e a Assinatura.

header.payload.signature

Casos de Uso Comuns

  • Autorização: O cenário mais comum. Assim que o usuário faz login, cada solicitação subsequente incluirá o JWT, permitindo que o usuário acesse rotas, serviços e recursos.
  • Troca de informações: JWTs são uma boa maneira de verificar credenciais válidas entre partes.
  • Sessões sem estado: Não há necessidade de manter dados de sessão no servidor; o token contém todas as informações de usuário necessárias.

Privacidade e Segurança

Sua segurança é nossa prioridade. Toda a lógica de decodificação e verificação de JWT ocorre no lado do cliente, no JavaScript do seu navegador. Nenhum token, cabeçalho ou carga útil é enviado para nossos servidores.

100% baseado no navegador

Como usar: Depurador JWT

  1. 1

    Cole um token (começa com eyJ) no campo Encoded. O header e o payload são decodificados na hora e exibidos como JSON formatado.

  2. 2

    Confira os claims padrão. Tempos como exp, iat e nbf aparecem como datas legíveis, então você vê na hora se o token expirou ou ainda não é válido.

  3. 3

    Para verificar a assinatura, informe o segredo HMAC (HS256/384/512) ou a chave pública em PEM (RS256/384/512, ES256/384/512). A ferramenta indica se a assinatura confere.

  4. 4

    Mude para o modo Generator para criar um token de teste: edite o payload, escolha o algoritmo, informe um segredo ou chave privada e copie o JWT assinado.

Exemplos práticos

Depurar erros 401

Uma API recusa sua requisição com 401 Unauthorized. Decodifique o token para achar um exp vencido, um aud errado ou um claim scope ausente.

Conferir tokens de provedores de identidade

Inspecione ID tokens do Auth0, Keycloak, Firebase ou Azure AD para ver quais claims (email, roles, groups) sua aplicação recebe de fato.

Testar controle de acesso por papéis

Gere tokens com role "admin" e role "viewer" assinados com o segredo de desenvolvimento para testar os dois caminhos de uma checagem de permissão.

Verificar a rotação de chaves

Depois de trocar as chaves, cole um token novo e a nova chave pública para confirmar que o kid do header e a assinatura batem com a chave nova.

Perguntas frequentes

Um JWT é criptografado?+

Normalmente não. Um JWT padrão (JWS) é só codificado em Base64URL e assinado. Qualquer um lê o payload, então nunca coloque senhas ou dados pessoais sensíveis nele. Tokens criptografados (JWE) são outro formato.

O que significam as três partes?+

header.payload.signature: o header informa algoritmo e tipo, o payload traz os claims e a assinatura prova que as duas primeiras partes foram criadas por quem tem a chave e não foram alteradas.

É seguro colar um token de produção?+

A decodificação e a verificação rodam totalmente no navegador e nada vai para o nosso servidor. Mesmo assim, um token válido funciona como senha até expirar; prefira tokens de teste ou revogue os reais após depurar.

HS256 ou RS256?+

O HS256 usa um único segredo compartilhado para assinar e verificar, simples para um só serviço. RS256 e ES256 assinam com chave privada e verificam com chave pública, ideal quando vários serviços validam tokens de uma autoridade central.