@gabrielhsilvestre mais uma vez parabéns pelo foco, seus conteúdos me ajudam bastante, pois são diretos ao ponto, ajudando na hora de uma possível consulta para lembrar um ponto ou outro que esquecemos ou deixamos passar batido.
Fiquei com duas dúvidas, imagino que possa me ajudar a saná-las, e desde já fico agradecido.
A primeira é a seguinte, autenticação seria o processo onde o usuário envia o ‘login’ e a senha, e autorização é o processo em que envia o JWT, ou JWT pode ser considerado para o processo de autenticação também?
A segunda é porque instalar o JWT em modo de desenvolvimento como foi feito acima, tem algum motivo para isso?
I'm a Full-Stack developer, with a high tendence to Back-end and a dream of living in Canada or Amsterdam and work with what I love, technology.
I'm also a big fan of animes and indie games.
Agradeço o reconhecimento e fico bem feliz que o conteúdo esteja ajudando!
Sobre as dúvidas:
1 - "Autenticação seria o processo onde o usuário envia o ‘login’ e a senha, e autorização é o processo em que envia o JWT, ou JWT pode ser considerado para o processo de autenticação também?"
Posso estar enganado, mas acho que autenticação seria o processo de validação do Token. Por exemplo: após um usuário fazer o login (outro processo) ele irá receber um Token, esse que deverá ser enviado junto de futuras requisições para que o usuário possa ser autenticado.
Enquanto a autorização seria um processo "pós login" e feito com informações do Token, por exemplo: se um usuário for administrador, seu Token poderá ter uma chave chamada admin recebendo o valor true e dentro de nossa API validamos se admin é true, se for o caso autorizamos o acesso, caso contrário bloqueamos.
2 - "Porque instalar o JWT em modo de desenvolvimento como foi feito acima, tem algum motivo para isso?"
A instalação em modo de desenvolvimento é apenas para a tipagem do JWT, essa que é obrigatória para se codar com TypeScript, porque se não ele fica "perdido". Então se for codar em JavaScript, é só instalar o JWT normalmente.
npm i jsonwebtoken # <- instalação padrão (para JavaScript)
npm i -D @types/jsonwebtoken # <- instalação da tipagem (para TypeScript)
Espero que tenha ficado mais claro, qualquer dúvida é só falar!
@gabrielhsilvestre mais uma vez parabéns pelo foco, seus conteúdos me ajudam bastante, pois são diretos ao ponto, ajudando na hora de uma possível consulta para lembrar um ponto ou outro que esquecemos ou deixamos passar batido.
Fiquei com duas dúvidas, imagino que possa me ajudar a saná-las, e desde já fico agradecido.
A primeira é a seguinte, autenticação seria o processo onde o usuário envia o ‘login’ e a senha, e autorização é o processo em que envia o JWT, ou JWT pode ser considerado para o processo de autenticação também?
A segunda é porque instalar o JWT em modo de desenvolvimento como foi feito acima, tem algum motivo para isso?
Agradeço o reconhecimento e fico bem feliz que o conteúdo esteja ajudando!
Sobre as dúvidas:
1 - "Autenticação seria o processo onde o usuário envia o ‘login’ e a senha, e autorização é o processo em que envia o JWT, ou JWT pode ser considerado para o processo de autenticação também?"
Posso estar enganado, mas acho que autenticação seria o processo de validação do Token. Por exemplo: após um usuário fazer o login (outro processo) ele irá receber um Token, esse que deverá ser enviado junto de futuras requisições para que o usuário possa ser autenticado.
Enquanto a autorização seria um processo "pós login" e feito com informações do Token, por exemplo: se um usuário for administrador, seu Token poderá ter uma chave chamada
admin
recebendo o valortrue
e dentro de nossa API validamos seadmin
étrue
, se for o caso autorizamos o acesso, caso contrário bloqueamos.2 - "Porque instalar o JWT em modo de desenvolvimento como foi feito acima, tem algum motivo para isso?"
A instalação em modo de desenvolvimento é apenas para a tipagem do JWT, essa que é obrigatória para se codar com TypeScript, porque se não ele fica "perdido". Então se for codar em JavaScript, é só instalar o JWT normalmente.
Espero que tenha ficado mais claro, qualquer dúvida é só falar!
Obrigado, ficou claro sim!