Gerador de JWT

Gerar JWT

Construa e assine um JWT diretamente no seu navegador. Insira as reivindicações de carga útil (padrão sub, aud, exp, etc. mais qualquer coisa personalizada), escolha o algoritmo (HS256 com um segredo compartilhado ou RS256/ES256 com uma chave privada) e a ferramenta produz o token de três partes. Útil para desenvolvimento local, testes de carga e reprodução de problemas de autenticação.

Como gerar um JWT

  1. 1

    Escreva a carga útil

    Reivindicações padrão (`sub`, `iss`, `aud`, `exp`, `iat`, `nbf`) mais quaisquer personalizadas que seu aplicativo espera.

  2. 2

    Escolha o algoritmo

    HS256/384/512 com um segredo compartilhado, ou RS256/ES256 com uma chave privada em formato PEM.

  3. 3

    Forneça a chave

    Texto de segredo compartilhado para HMAC, ou cole a chave privada para RSA/ECDSA. Ambas permanecem no seu navegador.

  4. 4

    Gerar

    A saída é o token assinado. Copie-o, use-o em testes, decodifique-o com o Decodificador de JWT para inspecionar.

Carga útil típica para um token de usuário autenticado

{
  "iss": "https://auth.example.com",
  "aud": "api.example.com",
  "sub": "user_12345",
  "iat": 1713398400,
  "nbf": 1713398400,
  "exp": 1713402000,
  "jti": "3c7c7e14-2de4-41f0-bf09-1eb5cfad4c01",
  "scope": "read:profile write:posts"
}

Escolha do algoritmo: HMAC vs assimétrico

Algoritmo Tipo de chave Usar quando
HS256 segredo compartilhado de 256 bits Monólito que assina e verifica a si mesmo
HS384/512 Segredo mais longo Mesmo que HS256, mais forte
RS256 RSA 2048+ O emissor assina, muitos serviços verificam com chave pública
ES256 ECDSA P-256 Mesmo que RS256, mas assinaturas menores
EdDSA Ed25519 Verificação assimétrica mais rápida, chaves menores

Força da chave

  • Segredos HMAC devem ter pelo menos tanta entropia quanto o tamanho da saída do algoritmo. HS256 precisa de 256 bits aleatórios (32 bytes); menos é passível de força bruta.
  • Chaves RSA devem ter no mínimo 2048 bits; 3072 ou 4096 para tokens de longa duração.
  • ECDSA (ES256) oferece segurança comparável à RSA 3072 com chaves muito menores e assinatura mais rápida.

Diretrizes de expiração

Tipo de token Duração típica de exp
Token de acesso 5 - 60 minutos
Token de atualização Dias a semanas
Redefinição de senha 5 - 15 minutos
Verificação de e-mail 24 horas
Serviço a serviço 1-5 minutos (curto)

Expiração curta + token de atualização é o padrão moderno. Tokens de acesso de longa duração são difíceis de revogar quando comprometidos.

Erros comuns

  • Reutilizar um segredo de teste em produção. O gerador marca segredos HS256 e o JWT de saída como apenas para teste se o segredo parecer fraco. Confie nesse aviso.
  • Assinar sem exp. Um JWT sem expiração é válido para sempre. Sempre defina exp a menos que você tenha um motivo muito bom e uma lista de revogação.
  • Usar o alg do cabeçalho no verificador. Sempre coloque em lista branca os algoritmos do lado da verificação; não siga o que o token pede.
  • Colar uma chave privada real aqui. Este gerador roda no seu navegador, mas trate chaves privadas como segredos: use chaves de teste, não de produção.

Perguntas frequentes

Não. A assinatura acontece no seu navegador usando a API Web Crypto. As chaves nunca saem da sua máquina. Dito isso, para chaves de produção, gere e assine em um ambiente controlado, não em um navegador.

HS256 é bom para um monólito onde o mesmo serviço assina e verifica. RS256 ou ES256 é melhor quando o emissor é separado do verificador, chaves públicas podem ser compartilhadas sem expor a chave de assinatura.

Curto. 5-15 minutos para tokens de acesso é típico. Use um token de atualização com uma vida útil mais longa para uma experiência de usuário contínua. Nunca emita JWTs sem uma reivindicação exp.

A ferramenta suporta emitir alg: none para testes deliberados de tokens quebrados / não assinados, com um aviso proeminente. Nunca aceite tais tokens em código de produção.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas