Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Confirmar se quem enviou requisição é mesmo o dono do token

Fiquei com essa dúvida pois na implementação há essa brexa, nada garante que quem está fazendo a requisição é de fato o proprietário do token, vi outros posts e que responderam que através do token poderia pegar a identificação do usuário, fazer uma query no banco e verificar se ele é o dono de fato mas como vou saber quem está enviando a requisição se no meu doFilterInternal só tenho o header da requisição, não tenho o corpo? Teria que em cada controller dar um jeito de recuperar o token, pegar o id do proprietário, checar o DTO de requisição qual usuário está fazendo e ai sim fazer essa comparação? PQ se tiver que fazer isso em cada controller o framework perde um pouco do sentido para mim, eu ja fiz um sisteminha de autenticação e o maior defeito dele era ter que chamar em todo controller que utilizava mas ele garantia a autenticidade do token e se quem enviou a requisição é mesmo o proprietário do token, dessa forma ficou meio incompleto com uma grande brexa de segurança.

2 respostas
solução!

Olá João, tudo bem? Imagino que sua dúvida seja por exemplo se tiver alguém no meio entre o client e o server que consiga interceptar o JWT e use-o em nome do proprietário do token, correto? Para solucionar essa questão você provavelmente vai precisar envolver criptografia, pode ser uma chave AES mais simples ou até mesmo usando chave pública e privada, certificado ou até mesmo um mTLS.

https://www.cloudflare.com/pt-br/learning/access-management/what-is-mutual-tls/#:~:text=O%20TLS%20m%C3%BAtuo%2C%20ou%20mTLS,TLS%20fornecem%20a%20verifica%C3%A7%C3%A3o%20adicional.

Muito obrigado Otávio, era exatamente essa informação que eu precisava.