Closed vinifraga closed 1 year ago
@vinifraga boa Vini! Por curiosidade, temos algum video da Rocket utilizando o Clerk? Nunca ouvi falar nada, e fiquei curioso
EDIT: Achei a documentação do Clerk com Expo e achei bem simples (https://clerk.com/docs/quickstarts/get-started-with-expo) Então não vai ser dificil
@LuizHAP Ainda não temos mas provavelmente, no futuro, vamos ter mais coisas na rocket falando sobre ele. 💜
Eu gostaria de contribuir nesta issue na parte do backend se for preciso! :smile:
Fala @LuizHAP, só pra complementar o que o @RennanD disse: não temos esse conteúdo, mas vou tentar trazer uma issue e commits bem descritivos para mostrar todo o passo a passo pra vocês conseguirem aprender e replicar em outros projetos 💜
Opa @trolliama, com certeza. Do backend praticamente só instalei a SDK do node e testei se conseguia validar a sessão com os dados recebidos da rota, mas tem espaço pra melhorias que vou trazer com mais detalhes nessa issue.
Trazendo uma atualização rápida pessoal: consegui fazer todas as 5 tasks acima que mencionei, funcionou bem o fluxo mas tive algumas dificuldades que vou documentar direitinho aqui pra vocês. No momento, estou refatorando o código para deixar uma estrutura melhor de autenticação que possa ser usada ao longo da aplicação.
A minha previsão é que até amanhã de manhã eu suba tudo aqui pra validarmos juntos e ir melhorando o código.
Como prometido pessoal, trouxe na PR #89 mais informações da funcionalidade de autenticação. Sugestões são sempre bem vindas 💜
Bom dia pessoal, estou trabalhando na autenticação via Github. Os principais objetivos são:
É importante ressaltar que para testes locais da autenticação, sugerimos que utilizem um Github OAuth app e um app Clerk próprios, pois não disponibilizaremos as chaves da Rocketseat. Vocês podem criar esses apps seguindo as documentações acima, obter as chaves e gerar um arquivo
.env
seguindo a estrutura que disponibilizamos no.env.example
.Ideia para a autenticação do usuário na plataforma: do lado do cliente (Expo), utilizaremos a SDK do Clerk para a autenticação com Github. Após o login realizado, obtemos o
sessionId
e osessionToken
e os enviamos para o servidor (NestJS). De posse dessas informações, o servidor consegue verificar se a sessão é válida para liberar ações restritas a usuários autenticados na aplicação.Em breve trarei mais informações sobre essa issue :purple_heart: