JWTs são tokens digitais que verificam com segurança a identidade do usuário. No Fin, cada JWT confirma que um usuário é quem afirma ser e permite comunicação criptografada entre cliente e servidor.
Tokens inválidos ou payloads incorretos podem impedir a autenticação bem-sucedida, gerando erros 400 ou bloqueando tentativas de login.
Corrigindo erros 400 para logins de usuários identificados
Um erro 400 normalmente significa que o JWT é inválido ou foi criado incorretamente. Siga estes passos para resolver:
Use uma biblioteca JWT confiável.
Gere JWTs por usuário usando uma biblioteca padrão do setor e assine-os com seu Messenger API Secret.Verifique o payload.
O payload do JWT deve incluir campos exatamente como esperado pelo SDK.Exemplo: Certifique-se de que o campo
user_iduse a capitalização e formato corretos.
Combine o token com o usuário.
Cada JWT deve corresponder ao usuário correto. Passar um token gerado para outro usuário causará um erro.
Nota: Quando o SDK detecta um JWT inválido, ele bloqueia tentativas de login para proteger a segurança da conta. Verifique sua configuração de token se os erros persistirem.
Corrigindo problemas de login de usuários não identificados
Logins não identificados exigem uma sessão limpa e nova. Se um JWT inválido permanecer ativo, logins não identificados podem falhar. Tente o seguinte:
Limpe sessões anteriores.
Faça logout ou limpe completamente a sessão existente no SDK.Inicie uma nova sessão.
Reinicialize o fluxo de login usando:Intercom.loginUnidentifiedUser()
Isso redefine o ambiente da sessão e garante um login não identificado sem conflitos.
Melhores práticas
Mantenha sessões isoladas. Sempre limpe sessões antigas antes de iniciar uma nova tentativa de login.
Valide JWTs no servidor. Use lógica de verificação para confirmar a integridade do token antes de enviá-lo ao SDK.
Roteie secrets da API periodicamente. Isso ajuda a manter a segurança e reduzir o risco de tokens comprometidos.
Monitore logs de autenticação. Revisar logs de login falhos pode ajudar a identificar problemas recorrentes de formatação ou tempo do JWT.
Perguntas frequentes
Por que meu JWT é rejeitado mesmo parecendo válido?
Mesmo pequenas discrepâncias (como capitalização ou formatação no user_id) podem tornar um JWT inválido. Certifique-se de que a estrutura do payload e o segredo de assinatura estejam exatamente alinhados com os requisitos do SDK.
Posso reutilizar um JWT para várias sessões?
Não. JWTs são destinados para uso único ou sessões curtas para aumentar a segurança. Sempre gere um novo token para cada login.
Como testar se um JWT é válido?
Use um decodificador JWT (como jwt.io) para inspecionar a estrutura do payload e confirmar que inclui o user_id e a assinatura corretos.
