Authentification multifacteur et récupération de compte
Renforcez l’authentification au-delà des mots de passe avec MFA et concevez des parcours sécurisés de récupération de compte qui ne deviennent pas une porte dérobée contournant vos protections.
Authentification multifacteur et récupération de compte est une leçon Secure Coding & OWASP Top 10 for Backend gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Secure Coding & OWASP Top 10 for Backend, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Secure Coding & OWASP Top 10 for Backend comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Beyond the Password
Strong access control and good session management still rest on one assumption: the user is who they claim. Passwords alone are weak. Multi-factor authentication adds layers so a stolen password is not enough.
The Three Factors
Authentication factors fall into categories:
- Something you know — password, PIN
- Something you have — phone, hardware key
- Something you are — fingerprint, face
MFA combines two or more different categories.
TOTP Authenticator Apps
Time-based One-Time Passwords generate a 6-digit code from a shared secret and the current time. The server computes the same code to verify.
import pyotp
totp = pyotp.TOTP(user_secret)
is_valid = totp.verify(submitted_code)Why SMS Is Weaker
SMS codes are better than nothing but vulnerable to SIM swapping and interception. Prefer TOTP apps or hardware keys; reserve SMS as a last-resort option.
Hardware Keys and WebAuthn
WebAuthn uses public-key cryptography with a hardware or platform authenticator. There is no shared secret to phish — the strongest widely available MFA.
Backup Codes
What if a user loses their phone? Issue one-time backup codes at enrollment. Store them hashed, just like passwords, and invalidate each after use.
stored = hash(backup_code)
# on use: verify then mark consumedRecovery Is an Attack Surface
Account recovery often bypasses MFA. If recovery only needs an email link, an attacker who controls the inbox owns the account. Recovery must be as strong as login.
Secure Recovery Tokens
Recovery links should use a high-entropy, single-use, short-lived token, stored hashed and invalidated on use or password change.
token = secrets.token_urlsafe(32)
store(hash(token), expires_in=900) # 15 minutesAvoid Recovery Pitfalls
- Do not reveal whether an email exists (enumeration)
- Rate-limit recovery requests
- Notify the user when recovery is initiated
- Require re-enrollment of MFA after a full reset
Step-Up Authentication
For sensitive actions — changing email, large transfers — require a fresh factor even within an active session. This step-up limits the damage of a hijacked session.
Rate-Limiting the MFA Step
The MFA code entry is itself a target. A six-digit code has only a million possibilities, so without limits an attacker can brute-force it. Rate-limit and lock out after a few wrong codes, and expire each code quickly.
Quick Check
Test your MFA and recovery knowledge.
Recap
You strengthened authentication:
- MFA combines factors from different categories
- Prefer TOTP and WebAuthn over SMS
- Provide hashed backup codes
- Make recovery as strong as login with single-use, expiring tokens
- Use step-up auth for sensitive actions
Questions Fréquemment Posées
La leçon « Authentification multifacteur et récupération de compte » est-elle gratuite ?
Oui — le texte complet de « Authentification multifacteur et récupération de compte » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Secure Coding & OWASP Top 10 for Backend, passe à CoddyKit PRO. Le cours Secure Coding & OWASP Top 10 for Backend comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Authentification multifacteur et récupération de compte » ?
Renforcez l’authentification au-delà des mots de passe avec MFA et concevez des parcours sécurisés de récupération de compte qui ne deviennent pas une porte dérobée contournant vos protections. Tu pratiques Secure Coding & OWASP Top 10 for Backend avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Secure Coding & OWASP Top 10 for Backend ?
Aucune expérience préalable n'est requise. Secure Coding & OWASP Top 10 for Backend sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Authentification multifacteur et récupération de compte » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Secure Coding & OWASP Top 10 for Backend ?
Oui. Chaque leçon Secure Coding & OWASP Top 10 for Backend inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Mise en œuvre d’un contrôle d’accès renforcé
- Mécanismes sécurisés d’authentification des utilisateurs
- Bonnes pratiques de gestion des sessions
- Authentification multifacteur et récupération de compte