Como usar JWT (JSON Web Token) para autenticação de API Print

  • 0

Como usar JWT (JSON Web Token) para autenticação de API com segurança — Guia para Iniciantes

Olá, viajante da web! Seja muito bem-vindo(a) ao nosso Sensei da GeHost — aqui, ensinamos com carinho, clareza e um toque de magia digital. Hoje vamos aprender juntos como usar JWT (JSON Web Token) para autenticar APIs com segurança. Sim, é mais simples do que parece!

Dica do Sensei: JWT é como um "passaporte digital" que permite que um sistema confie em outro — sem precisar de senhas toda vez. É seguro, leve e muito usado no mundo moderno da programação.

Passo 1: Entenda o que é JWT

Imagine que você está entrando em um clube exclusivo. Em vez de mostrar seu documento toda vez, você ganha um cartão especial (o JWT) que diz: "Este é o João, ele tem acesso permitido". Esse cartão tem uma assinatura digital que ninguém pode falsificar.

Um JWT é composto por três partes:

  • Cabeçalho – diz que é um JWT e o tipo de assinatura usada.
  • Payload – contém informações como ID do usuário, tempo de expiração, permissões.
  • Assinatura – evita que o token seja alterado.

Essas partes são separadas por pontos: header.payload.signature.

Passo 2: Crie um sistema de autenticação com JWT

Vamos supor que você está desenvolvendo uma API para um app de tarefas. Quando o usuário se loga, em vez de armazenar sessões no servidor, você gera um JWT e envia para o cliente.

Passos simples:

  1. O usuário envia seu email e senha para a rota de login.
  2. O servidor verifica as credenciais.
  3. Se estiver tudo certo, o servidor cria um JWT com dados do usuário.
  4. Esse JWT é enviado de volta ao cliente.
  5. O cliente armazena o JWT (por exemplo, no localStorage do navegador).

Depois disso, toda vez que o cliente precisar acessar uma rota protegida da API, ele envia o JWT no cabeçalho da requisição:

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Passo 3: Proteja sua API com JWT no servidor

No seu servidor (seja em Node.js, PHP, Python, etc.), você deve:

  • Validar o JWT sempre que uma rota protegida for acessada.
  • Verificar se o token não expirou.
  • Confirmar a assinatura para garantir que o token não foi alterado.

Se tudo estiver certo, o usuário tem acesso. Se não, a API recusa a requisição com um código 401 (não autorizado).

Dica do Sensei: Nunca confie em dados do JWT sem validá-los no servidor. Mesmo que o cliente envie um token, você deve verificar sua autenticidade!

Passo 4: Use SSL/TLS para proteger o JWT em trânsito

Um JWT é seguro apenas se estiver sendo transmitido com segurança. Se ele for enviado por HTTP (não seguro), qualquer pessoa na rede pode pegar o token e se passar pelo usuário.

Por isso, é essencial que sua API use SSL/TLS — ou seja, HTTPS.

Na GeHost, você pode ativar o SSL com apenas alguns cliques:

Tela 'SSL/TLS Certificates' no cPanel com opção para emitir certificado

Na tela acima, clique em “Emitir Certificado” e siga os passos. Em poucos minutos, seu site estará rodando em HTTPS — e seus JWTs estarão seguros em trânsito.

Passo 5: Dicas práticas para manter tudo seguro

  • Defina tempo de expiração curto para o JWT (ex: 15 a 30 minutos).
  • Não armazene dados sensíveis no payload (como senha ou CPF).
  • Use chaves fortes para assinar o JWT (ex: HMAC-SHA256).
  • Considere usar tokens de atualização (refresh tokens) para manter o usuário logado sem expor o JWT por muito tempo.

Dica do Sensei: Um JWT bem usado é como um guarda-freio digital: protege sua API e deixa o usuário se sentir seguro ao usar seu app.

Conclusão

Usar JWT para autenticação de API é uma prática moderna, segura e eficiente. Com a ajuda do SSL/TLS da GeHost e um bom entendimento dos princípios, você consegue proteger seus dados com elegância.

Se você está começando, não se preocupe. Todos os grandes desenvolvedores já passaram por esse caminho. O importante é começar — e você já começou com um passo seguro.

Se precisar de ajuda, estamos aqui. A GeHost é sua parceira na jornada digital. 💚


Was this answer helpful?

« Back