1
resposta

JWT - Erro na assinatura

Ao executar a aplicação do curso de webapi com dotnet core, ao obter um token e verificar ele no jwt.io, dá um erro "Invalid Signature". O token obtido pela aplicação feita por vocês foi: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJXYWx0ZXIiLCJqdGkiOiJkOWIwY2VjNi04ZTljLTRhYTktYjljNy02NWEyZmZhNGU4ZDUiLCJleHAiOjE1OTY0NjMyNjgsImlzcyI6IkFsdXJhLldlYkFwcCIsImF1ZCI6IlBvc3RtYW4ifQ.yFvm1WHgjzl00knm2-CNEwT3guxO-1T-nsYR0itRIU8

Quando clico na caixa de verificação "secret base64 encoded", ao lado direito, embaixo, o jwt.io muda a assinatura e valida o token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJXYWx0ZXIiLCJqdGkiOiJkOWIwY2VjNi04ZTljLTRhYTktYjljNy02NWEyZmZhNGU4ZDUiLCJleHAiOjE1OTY0NjMyNjgsImlzcyI6IkFsdXJhLldlYkFwcCIsImF1ZCI6IlBvc3RtYW4ifQ.wg2WCw7Jknynhnm_ykAZfM84Zi7gonH6cw9eGUEGKdo

O que pode estar errado?

1 resposta

Olá Walter, tudo bem?

Não entendi muito bem o que aconteceu.

Mas pelo que vi, ao gerar o JWT, logo acima da caixa sobre o secret base64 encoded falta uma chave segura de 256 bits. Por padrão ela contem o seguinte texto: your-256-bit-secret e é exigido algum segredo maior e mais seguro, de no mínimo 32 caracteres (que configura 256 bits). Ao atingir 32 caracteres some o aviso de inválido.

Pelo que entendi, esse campo é para entrar a chave secreta da função que o JWT é gerado no seu código.

Bom, não sei se consegui ajudar, mas qualquer coisa estamos aí. Bons estudos!