Ce billet explique comment sécuriser une application Symfony avec une double authentification (2FA) robuste en utilisant le bundle SchebTwoFactorBundle. L'auteur décrit une architecture sécurisée où le secret TOTP est géré côté backend, avec une implémentation stricte utilisant des classes anonymes en lecture seule pour encapsuler la configuration TOTP. Il met en avant l'importance de ne pas réinventer la crypto et de déléguer la gestion de la 2FA à une bibliothèque éprouvée pour éviter les failles d'implémentation. L'article détaille également la configuration du bundle et les bonnes pratiques à adopter pour une sécurité optimale.
L'article explique ce qu'est l'authentification multifacteur (2FA ou MFA), à quel besoin elle répond sur quels fondements elle repose. Il décrit aussi sa mise en place côté utilisateur.
L'auteur montre comment implémenter la double authentification dans Symfony, en utilisant quelques dépendances externes :
- OTPHP - une librairie qui permet de gérer les TOTP, mots de passe à usage unique basés sur le temps
- Endroid/QrCode - pour générer les QR codes
- Scheb/2fa-bundle - le bundle de double authentification de Symfony
Tout est dans le titre
Tout est dans le titre
Une application libre pour l'authentification à 2 facteurs
Tout est dans le titre
Tout est dans le titre
Je cite l'auteur sur le début de ses déboires "Je me retrouve à devoir récupérer un mail sur le domaine cassé pour pouvoir réparer le domaine cassé."
Pas simple...
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre