Blog

Tips, guides, and privacy advice

← Back to Blog
Conseils développeur

Comment tester les flux de réinitialisation de mot de passe sans utiliser votre vraie boîte mail

7 janvier 2026·6 min read

Pourquoi les tests de réinitialisation de mot de passe sont négligés

La plupart des développeurs testent le flux de réinitialisation une fois avec leur propre adresse et considèrent le travail terminé. Après la cinquième exécution de test, la boîte mail est remplie de messages identiques "Réinitialisez votre mot de passe". On perd la trace de quel lien appartient à quelle exécution, et finalement on arrête de tester minutieusement parce que c'est trop fastidieux. Exactement ce genre de négligence laisse des bugs sérieux passer en production.

Ce qu'il faut réellement tester dans un flux de réinitialisation

Une simple vérification "est-ce que ça envoie un e-mail" est insuffisante. Le OWASP Authentication Cheat Sheet détaille un ensemble complet d'exigences :

  • Livraison de l'e-mail — l'e-mail de réinitialisation arrive-t-il rapidement ?
  • Exactitude du lien — le lien mène-t-il à la bonne page avec le bon jeton ?
  • Expiration du jeton — un jeton expiré est-il correctement rejeté après 25 heures ?
  • Usage unique — le même lien peut-il être utilisé deux fois ? Ce ne devrait pas être le cas.
  • Invalidation lors d'une nouvelle demande — le premier jeton devient-il invalide si l'utilisateur demande un nouveau reset ?
  • Comptes SSO — que se passe-t-il pour les utilisateurs OAuth ?
  • Limitation de débit — y a-t-il une limite sur les demandes de réinitialisation ?
  • Énumération d'e-mails — la réponse diffère-t-elle selon que l'adresse existe ou non ?

L'approche e-mail temporaire — étape par étape

La solution la plus propre est une adresse e-mail temporaire fraîche pour chaque exécution de test. Ouvrez une boîte de réception temporaire, copiez l'adresse, créez un compte de test dans votre application, déclenchez une réinitialisation et observez l'e-mail arriver en temps réel. Cliquez le lien, vérifiez le flux complet et confirmez que la connexion fonctionne. Pour un autre scénario, ouvrez simplement un nouvel onglet de navigateur.

Ne codez jamais en dur une adresse e-mail de test dans votre base de code. Utilisez une boîte mail temporaire fraîche à chaque fois — cela garantit que vous testez une vraie livraison et commencez toujours avec un état propre.

La liste de contrôle de sécurité des jetons

Les jetons de réinitialisation sont une surface d'attaque courante. Selon OWASP, une implémentation sécurisée doit satisfaire :

  • Au moins 32 caractères, générés de manière cryptographiquement aléatoire
  • Expire dans les 24 heures, idéalement dans l'heure
  • Usage unique — invalidé immédiatement après utilisation
  • Invalidé lorsqu'une nouvelle réinitialisation est demandée
  • Limité en débit par adresse e-mail
  • Jamais enregistré en clair dans les journaux

Intégrez la réinitialisation dans votre suite de régression

La réinitialisation de mot de passe se casse silencieusement quand les bibliothèques d'authentification sont mises à jour. Ajoutez au minimum un test de bout en bout de base : créez programmatiquement un compte de test, déclenchez une réinitialisation, interceptez l'e-mail sortant et vérifiez le jeton. Vérifiez la configuration d'authentification de votre domaine avec MXToolbox et consultez Troy Hunt pour une perspective approfondie sur les failles de sécurité réelles.