Depuração de autenticação

Como depurar autenticação JWT com segurança

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.

Decodificar um JWT mostra apenas o texto fornecido por quem criou o token. Isso não comprova identidade, integridade nem aceitação pelo servidor até que a assinatura e as declarações obrigatórias sejam verificadas.

Trabalhe com tokens de teste anonimizados sempre que possível. Um bearer token de produção concede acesso a quem o obtiver até que expire ou seja revogado.

Revise a estrutura e as declarações de tempo

Confirme que o token tenha três segmentos JWS e decodifique o cabeçalho e a carga útil. Verifique exp, nbf e iat como segundos Unix, incluindo a diferença de relógio permitida.

Verifique se iss, aud, sub, tenant, client_id e o tipo de token correspondem exatamente ao ambiente e à API que recebem a requisição.

Verifique o algoritmo e a assinatura

O servidor deve aceitar somente os algoritmos esperados e selecionar a chave confiável correta. Nunca aceite alg none nem decida a verificação apenas com base em um cabeçalho não confiável.

Durante a rotação de chaves, revise kid, o conjunto JWKS atual, a duração do cache e a sobreposição entre as chaves de assinatura antigas e novas.

Separe autenticação de autorização

Uma assinatura válida não concede todas as ações. Compare escopos, funções, permissões, propriedade do recurso e decisões de política com os requisitos do endpoint.

Registre o estágio exato da rejeição e o erro do servidor sem armazenar o bearer token completo.

Checklist de depuração JWT

  • Use um token de teste curto e anonimizado.
  • Confira exp, nbf, iat e a diferença de relógio em segundos Unix.
  • Faça emissor, público-alvo, ambiente e tipo de token coincidirem.
  • Restrinja os algoritmos aceitos e verifique a assinatura.
  • Verifique kid e o comportamento durante a rotação de chaves.
  • Valide a autorização depois que a autenticação funcionar.

Guias relacionados

Entenda o workflow por trás desta ferramenta e o que revisar depois.

Ferramentas relacionadas