Guide Auth0 MFA
Ajoutez l'authentification multifacteur pour protéger les comptes utilisateur et exiger une vérification supplémentaire pour les opérations sensibles.
Aperçu
Qu'est-ce que MFA ?
L'authentification multifacteur (MFA) oblige les utilisateurs à fournir deux facteurs de vérification ou plus pour accéder à leurs comptes. Auth0 supporte plusieurs facteurs MFA et permet l'authentification progressive pour les opérations sensibles.
Quand utiliser cette skill
- Ajouter MFA pour protéger les comptes utilisateur
- Exiger une vérification supplémentaire pour les actions sensibles (paiements, modifications de paramètres)
- Implémenter une authentification adaptative/basée sur le risque
- Respecter les exigences de conformité (PCI-DSS, SOC2, HIPAA)
Facteurs MFA supportés
| Facteur | Type | Description |
|---|---|---|
| TOTP | Something you have | Mots de passe à usage unique basés sur le temps (Google Authenticator, Authy) |
| SMS | Something you have | Codes à usage unique par SMS |
| Something you have | Codes à usage unique par email | |
| Push | Something you have | Notifications push via l'application Auth0 Guardian |
| WebAuthn | Something you have/are | Clés de sécurité, biométrie, passkeys |
| Voice | Something you have | Codes à usage unique par appel téléphonique |
| Recovery Code | Backup | Codes de récupération à usage unique |
Concepts clés
| Concept | Description |
|---|---|
acr_values |
Demander MFA lors de l'authentification |
amr claim |
Authentication Methods Reference - indique comment l'utilisateur s'est authentifié |
| Step-up auth | Exiger MFA pour des actions spécifiques après la connexion initiale |
| Adaptive MFA | Exiger MFA de manière conditionnelle en fonction des signaux de risque |
Étape 1 : Activer MFA dans le tenant
Via le tableau de bord Auth0
- Allez à Security → Multi-factor Auth
- Activez les facteurs souhaités (TOTP, SMS, etc.)
- Configurez les Policies :
- Always - Exiger MFA pour toutes les connexions
- Adaptive - MFA basée sur le risque
- Never - Désactiver MFA (utilisez step-up à la place)
Via Auth0 CLI
# Afficher la configuration MFA actuelle
auth0 api get "guardian/factors"
# Activer TOTP (mot de passe à usage unique)
auth0 api put "guardian/factors/otp" --data '{"enabled": true}'
# Activer SMS
auth0 api put "guardian/factors/sms" --data '{"enabled": true}'
# Activer les notifications push
auth0 api put "guardian/factors/push-notification" --data '{"enabled": true}'
# Activer WebAuthn (Roaming - Clés de sécurité)
auth0 api put "guardian/factors/webauthn-roaming" --data '{"enabled": true}'
# Activer WebAuthn (Platform - Biométrie)
auth0 api put "guardian/factors/webauthn-platform" --data '{"enabled": true}'
# Activer Email
auth0 api put "guardian/factors/email" --data '{"enabled": true}'
Configurer la policy MFA
# Définir la policy MFA : "all-applications" ou "confidence-score"
auth0 api patch "guardian/policies" --data '["all-applications"]'
Étape 2 : Implémenter l'authentification progressive
L'authentification progressive exige MFA pour les opérations sensibles sans l'exiger pour chaque connexion.
Le paramètre acr_values
Demandez MFA en incluant acr_values dans votre requête d'autorisation :
acr_values=http://schemas.openid.net/pape/policies/2007/06/multi-factor
Modèle d'implémentation
Le modèle général pour tous les frameworks :
- Vérifiez si l'utilisateur a déjà complété MFA (inspectez le
amrclaim) - Si non, demandez MFA via le paramètre
acr_values - Procédez avec l'action sensible une fois MFA vérifié
Pour les exemples complets spécifiques à chaque framework, consultez le Guide des exemples :
- React (basique et custom hook)
- Next.js (App Router)
- Vue.js
- Angular
Ressources supplémentaires
Cette skill est divisée en plusieurs fichiers pour une meilleure organisation :
Exemples d'authentification progressive
Exemples de code complets pour tous les frameworks :
- React (modèles basiques et custom hook)
- Next.js (App Router avec routes API)
- Vue.js (Composition API)
- Angular (services et composants)
Validation backend
Apprenez à valider le statut MFA sur votre backend :
- Validation JWT Node.js / Express
- Validation Python / Flask
- Exemples de middleware
Sujets avancés
Modèles avancés d'implémentation MFA :
- MFA adaptative avec Auth0 Actions
- MFA conditionnelle basée sur les signaux de risque
- API d'inscription MFA
Guide de référence
Modèles courants et dépannage :
- Mémoriser MFA pendant 30 jours
- MFA pour les transactions de grande valeur
- Affichage du statut MFA
- Gestion des erreurs
- Valeurs du claim AMR
- Stratégies de test
- Considérations de sécurité
Skills connexes
auth0-quickstart- Configuration de base Auth0auth0-passkeys- Implémentation WebAuthn/passkeyauth0-actions- Logique d'authentification personnalisée