4
respostas

Depois que um toquen foi criado ele pode ser utilizado para futuras requisições ou somente no período que defini a existência dele (expiração)?

Depois que um toquen foi criado ele pode ser utilizado para futuras requisições ou somente no período que defini a existência dele (expiração)?

Pergunto isso porque bateu a seguinte dúvida: se eu armazenar este token em um registro do banco de dados para determinado usuario, e toda vez que este usuario fizer requisições passando o token, ele será considerado válido?

4 respostas

Boa noite, Daniel! Como vai?

Depois do tempo de experição o token se torna inválido! Ou seja, vc até pode utilizar ele, mas a aplicação não irá aceitar o token e deverá avisar o usuário sobre a necessidade de obter um novo!

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Entendi mais ou menos,

Se eu não definir um tempo para ele expirar ele funcionará sem a necessidade de obter um novo ou independentemente disso ele irá expirar?

A ideia é persistir o token no DB para não ser necessário ficar sendo gerado novos.

Continuo com a dúvida.

Opa, Daniel! Perdão pela demora!

Por questões de segurança, o ideal é que o token sempre tenha uma data de validade e que não seja tão longa! Exatamente como no caso das sessões em aplicações web monolíticas. Afinal de contas, não queremos que qualquer um a qualquer momento possa utilizar a nossa sessão ( ou no seu caso específico o token ).

Sobre a validade dele, normalmente, já é definido um valor padrão mesmo quando não indicamos explicitamente o valor que queremos! Inclusive, a orientação dada pela própria especificação JWT é que o token tenha validade padrão de no máximo alguns poucos minutos, como pode ser visto aqui! E essa orientação dada tem como motivação justamente a questão que levantei no primeiro parágrafo!

Para saber mais: Caso queira se aprofundar ainda mais na especificação JWT, o link é esse aqui!

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!