OAuth2 Strategy

NestJS 🔴 Senior

Définition

Stratégie Passport pour l'authentification via providers tiers (Google, GitHub, Facebook). Gère le flow d'autorisation OAuth2 avec callback.

Analogie

Comme se connecter a un hôtel avec sa carte de membre d'une chaîne : un tiers de confiance confirme ton identité.

Exemple de code

@Injectable()
export class GoogleStrategy extends PassportStrategy(Strategy, 'google') {
  constructor(cfg: ConfigService) {
    super({ clientID: cfg.get('GOOGLE_ID'),
      clientSecret: cfg.get('GOOGLE_SECRET'),
      callbackURL: '/auth/google/callback',
      scope: ['email', 'profile'] });
  }
  validate(token, refresh, profile) { return profile; }
}

Cas d'usage

Proposer le 'Login with Google/GitHub' pour simplifier l'onboarding utilisateur.

#security

← → au clavier pour passer d'une fiche à l'autre