Blog
O que é JWT e Como Funciona? Guia Completo para Iniciantes
Descubra o que é JWT (JSON Web Token), como ele funciona, quais são suas partes e por que é amplamente utilizado para autenticação em aplicações web modernas.

O que é JWT e Como Funciona?
Se você já desenvolveu aplicações web modernas, provavelmente encontrou o termo JWT ou JSON Web Token. O JWT é uma das formas mais populares de transmitir informações com segurança entre um cliente e um servidor. Ele é amplamente utilizado para autenticação, autorização e proteção de APIs.
Neste guia, você aprenderá o que é JWT, como ele funciona, como é estruturado e por que se tornou um padrão no desenvolvimento web moderno.
O que é JWT?
JWT (JSON Web Token) é um padrão aberto (RFC 7519) que permite transmitir informações de forma segura utilizando um objeto JSON compacto.
Cada JWT é assinado digitalmente, permitindo verificar se o token foi alterado.
Diferente da autenticação baseada em sessões, o JWT armazena as informações de autenticação dentro do próprio token, em vez de mantê-las no servidor.
Estrutura de um JWT
Um JWT é composto por três partes, separadas por pontos.
xxxxx.yyyyy.zzzzz
1. Header
O Header contém informações sobre o algoritmo de assinatura e o tipo do token.
Exemplo:
{
"alg": "HS256",
"typ": "JWT"
}
Depois disso, o Header é codificado em Base64Url.
2. Payload
O Payload contém os dados do usuário (claims).
Exemplo:
{
"userId": 15,
"email": "john@example.com",
"role": "admin"
}
Ele pode conter:
- ID do usuário
- Nome
- Função (Role)
- Permissões
- Data de expiração
O Payload não é criptografado. Qualquer pessoa que possua o token pode visualizar seu conteúdo.
3. Signature
A Signature garante que o token não foi modificado.
Ela é criada utilizando:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret
)
A chave secreta é conhecida apenas pelo servidor.
Como o JWT Funciona?
O fluxo normalmente acontece da seguinte forma:
- O usuário faz login.
- O servidor valida as credenciais.
- O servidor gera um JWT.
- O token é enviado ao cliente.
- O cliente armazena o JWT.
- Em cada requisição futura, o token é enviado novamente.
- O servidor verifica a assinatura.
- Se for válida, o acesso é concedido.
Esse processo elimina a necessidade de armazenar sessões no servidor.
Onde o JWT é Utilizado?
O JWT é amplamente utilizado em:
- Autenticação de usuários
- APIs REST
- Aplicações React, Vue e Angular
- Aplicativos móveis
- OAuth 2.0
- Microsserviços
- API Gateway
Vantagens do JWT
Entre os principais benefícios estão:
- Autenticação Stateless
- Tokens compactos
- Validação rápida
- Fácil integração entre vários serviços
- Ideal para aplicativos móveis
- Fácil escalabilidade
JWT vs Sessões
| JWT | Sessões |
|---|---|
| Armazenado no cliente | Armazenadas no servidor |
| Stateless | Stateful |
| Ideal para APIs | Ideal para sites tradicionais |
| Fácil de escalar | Requer armazenamento de sessões |
Ambas as abordagens são válidas dependendo da arquitetura da aplicação.
O JWT é Seguro?
Sim, desde que seja implementado corretamente.
Boas práticas incluem:
- Utilizar HTTPS.
- Definir um tempo de expiração.
- Não armazenar dados sensíveis no Payload.
- Utilizar algoritmos de assinatura seguros.
- Alterar periodicamente a chave secreta.
- Validar a assinatura de todos os tokens.
Erros Mais Comuns
Os erros mais frequentes são:
- Armazenar senhas no JWT.
- Não definir tempo de expiração.
- Não validar a assinatura.
- Utilizar chaves secretas fracas.
- Enviar tokens por HTTP.
Exemplo de JWT
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
eyJ1c2VySWQiOjE1LCJyb2xlIjoiYWRtaW4ifQ.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Embora pareça uma sequência aleatória de caracteres, ela é composta por Header, Payload e Signature.
Conclusão
O JWT é uma das tecnologias mais utilizadas para autenticação em aplicações modernas. Ele permite transmitir informações entre cliente e servidor de forma segura e eficiente, sem armazenar sessões.
Se você desenvolve APIs, aplicações SPA ou aplicativos móveis, entender como o JWT funciona é uma habilidade essencial. Com HTTPS, validação correta e boas práticas de segurança, o JWT oferece uma solução rápida, segura e escalável para autenticação e autorização.