Local Strategy
NestJS 🟡 MidDefinition
Strategie Passport qui authentifie via email/mot de passe. Valide les credentials contre la base de donnees et retourne l'utilisateur.
Analogie
Comme presenter sa carte d'identite et son mot de passe a un guichet pour prouver son identite.
Exemple de code
@Injectable()
export class LocalStrategy extends PassportStrategy(Strategy) {
constructor(private authService: AuthService) { super(); }
async validate(username: string, password: string) {
const user = await this.authService.validateUser(username, password);
if (!user) throw new UnauthorizedException();
return user;
}
}
Cas d'usage
Implementer le login classique par email et mot de passe avant d'emettre un JWT.
Anti-pattern
Comparer les mots de passe en clair au lieu d'utiliser bcrypt.