Autenticação OAuth2 com NestJS: Login com Google e GitHub
- Nível: Projetos
- Módulos: 7
- Aulas: 27
- Tempo de leitura: 1h 20min
- Tecnologias: NestJS, Git
- Preço: R$ 67,00
Código do curso: github.com/johnpires/autenticacao-oauth2-nestjs
Aprenda a implementar autenticação OAuth2 profissional com NestJS. Construa um sistema completo de login com Google e GitHub usando Passport.js, JWT, refresh tokens e proteção de rotas — do zero ao deploy.
Conteúdo do curso
Módulo 1: Introdução e Setup
Visão geral do projeto, configuração do ambiente e estrutura do NestJS com autenticação OAuth2.
- O que vamos construir: visão geral do projeto (8 min)
- Configurando o ambiente de desenvolvimento (8 min)
- Estrutura do projeto NestJS com autenticação (2 min)
Módulo 2: Fundamentos do OAuth2 e Passport.js
Entenda o fluxo Authorization Code Flow e configure o Passport.js no NestJS com guards e decorators.
- Como funciona o fluxo OAuth2 (Authorization Code Flow) (2 min)
- Instalando e configurando Passport.js no NestJS (2 min)
- Criando estratégias de autenticação (Strategy Pattern) (3 min)
- Guards e decorators de autenticação no NestJS (2 min)
Módulo 3: Login com Google
Crie credenciais no Google Cloud Console e implemente a GoogleStrategy completa com Passport.
- Criando credenciais no Google Cloud Console (8 min)
- Implementando GoogleStrategy com Passport (2 min)
- Callback, profile e persistência de usuário (2 min)
- Tratando erros e edge cases do Google OAuth2 (3 min)
Módulo 4: Login com GitHub
Configure OAuth App no GitHub e implemente GitHubStrategy com suporte a múltiplos provedores por usuário.
- Criando OAuth App no GitHub (2 min)
- Implementando GitHubStrategy (2 min)
- Vinculando múltiplos provedores a um usuário (3 min)
- Unificando o fluxo de autenticação (2 min)
Módulo 5: JWT e Refresh Tokens
Emita JWTs após login OAuth2, implemente refresh token rotation e proteja rotas com guards.
- Emitindo JWT após login OAuth2 (2 min)
- Refresh tokens: implementação e rotação (3 min)
- Guards de JWT e proteção de rotas (3 min)
- Logout e invalidação de tokens (3 min)
Módulo 6: Perfil de Usuário e Banco de Dados
Modele entidades User e OAuthProvider com TypeORM, salve perfis OAuth e implemente endpoints de perfil.
- Modelando entidades User e OAuthProvider com TypeORM (2 min)
- Salvando e atualizando perfil OAuth (3 min)
- Endpoint de perfil autenticado (2 min)
- Dados do usuário e serialização segura (2 min)
Módulo 7: Deploy e Conclusão
Configure variáveis de ambiente de produção, faça deploy no Railway e configure callbacks OAuth2 de produção.
- Variáveis de ambiente e secrets de produção (2 min)
- Deploy no Railway com PostgreSQL (2 min)
- Configurando callbacks de produção no Google e GitHub (3 min)
- Próximos passos e melhorias (2 min)