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

secret no JWT, qual a função?

Olá pessoal,

Eu pesquisei mas não consegui entender bem a utilidade do "secret" para gerar o token JWT. Alguém pode me explicar por gentileza? Pelo que o professor disse, é a senha da nossa API ou algo do tipo mas qual a função de passarmos como parâmetro no método signWith() ?

forum.jwt.secret=rm'!@N=Ke!~p8VTA2ZRK~nMDQX5Uvm!m'D&]{@Vr?G;2?XhbC:Qa#9#eMLN\}x3?JR3.2zr~v)gYF^8\:8>:XfB:Ww75N/emt9Yj[bQMNCWwW\J?N,nvH.<2\.r~w]*e~vgak)X"v8H`MH/7"2E`,^k@n<vE-wD3g9JWPy;CrY*.Kd2_D])=><D?YhBaSua5hW%{2]_FVXzb9`8FH^b[X3jzVER&:jw2<=c38=>L/zBq`}C6tT*cCSVC^c]-L}&/
return Jwts.builder()
                .setIssuer("API do Forum Alura")
                .setSubject(logado.getId().toString())
                .setIssuedAt(hoje)
                .setExpiration(dataExpiracao)
                .signWith(SignatureAlgorithm.HS256, secret)
                .compact();
    }
2 respostas
solução!

Oi Daniel,

O secret é uma senha que precisa ser utilizada para fazer a geração do token.

Isso faz parte da especifiação JWT, sendo obrigatório ter uma senha ao gerar os tokens.

Se não houvesse essa senha, qualquer pessoa poderia extrair as informações de um token ou enviar tokens válidos para a API, burlando assim o processo de autenticação.

Bons estudos!

Obrigado professor, consegui entender agora!