Vérification par SMS pour MFA
Logto prend en charge la fonctionnalité d’authentification multi-facteurs (MFA) basée sur SMS, qui renforce la sécurité des comptes en envoyant des codes de vérification à usage unique aux numéros de téléphone enregistrés des utilisateurs. Le SMS MFA sert de second facteur d’authentification et peut être combiné avec d’autres facteurs MFA (tels que TOTP, passkeys, codes de secours) pour offrir aux utilisateurs des options flexibles d’authentification à deux facteurs.
Concepts
La vérification par SMS, également appelée vérification du numéro de téléphone, est l’une des méthodes MFA les plus accessibles. Elle exploite l’omniprésence des téléphones mobiles pour délivrer des codes de vérification temporaires et à usage unique directement sur les appareils des utilisateurs via des messages texte. Contrairement aux applications d’authentification qui nécessitent l’installation de logiciels supplémentaires, le SMS MFA utilise l’infrastructure de messagerie existante, présente sur chaque appareil mobile, ce qui le rend immédiatement disponible pour les utilisateurs sans aucune configuration préalable.
Configurer la vérification par SMS pour MFA
Étape 1 : Configurer le connecteur SMS et les modèles
- Accédez à Console > Connecteurs > Connecteurs Email et SMS
- Sélectionnez un connecteur SMS approprié (Twilio, SMS Aero, etc.)
- Configurez les paramètres de connexion.
- Configurez le modèle SMS pour MFA avec les types d’utilisation dédiés.
- usageType
MfaVerification
pour la vérification MFA. - usageType
BindMFA
pour l’association MFA.
- usageType
- Testez la fonctionnalité du connecteur pour garantir la bonne livraison des messages.
- Consultez Connecteurs SMS pour les instructions de configuration spécifiques au fournisseur.
Étape 2 : Activer le SMS pour MFA
- Accédez à Console > Authentification multi-facteurs
- Activez le facteur "Code de vérification SMS". Il est recommandé d’utiliser le SMS MFA en combinaison avec d’autres facteurs MFA (TOTP, passkeys, codes de secours) pour réduire la dépendance à un seul facteur.
- Configurez votre politique MFA préférée (obligatoire ou optionnelle).
- Enregistrez vos modifications de configuration.
-
Limitation de la méthode de connexion : Les codes de vérification SMS ne peuvent pas être utilisés simultanément comme méthode de connexion (1FA) et comme facteur MFA (2FA). Choisissez un seul flux d’authentification par implémentation SMS.
-
Compatibilité de la méthode d’inscription : Les codes de vérification SMS peuvent être utilisés simultanément comme méthode d’inscription et comme MFA. Logto optimisera le flux d’inscription utilisateur final selon la politique MFA sélectionnée pour éviter de demander deux fois la vérification SMS pour le même numéro.
-
Compatibilité avec la récupération de mot de passe : Bien que les codes de vérification SMS puissent être utilisés à la fois pour Mot de passe oublié et pour MFA, cette combinaison est déconseillée. Cette configuration réduit l’efficacité de la sécurité MFA, car les utilisateurs pourraient contourner la MFA en utilisant la vérification SMS du mot de passe oublié pour réinitialiser leur mot de passe, puis utiliser le nouveau mot de passe pour l’authentification principale (1FA) suivie de la même méthode SMS pour la vérification MFA.
Flux de configuration du SMS MFA
L’invite de configuration MFA peut apparaître lors de l’inscription de l’utilisateur ou après la connexion, selon la politique MFA configurée. Les utilisateurs peuvent également activer le SMS MFA depuis leur page de paramètres du compte.
Le flux de configuration du SMS MFA dépend des facteurs suivants :
- Nombre de facteurs MFA principaux : S’il y a plusieurs facteurs principaux, l’utilisateur doit en choisir un à configurer. Les facteurs principaux sont les méthodes MFA autres que les codes de secours.
- Codes de secours activés : Lorsqu’ils sont activés, les codes de secours sont générés automatiquement après la configuration du facteur MFA principal ; l’utilisateur est invité à les sauvegarder.
- Configuration de l’identifiant d’inscription : Si le numéro de téléphone a été utilisé comme identifiant d’inscription et que l’utilisateur l’a déjà vérifié avec un code SMS lors de l’inscription, le système associera automatiquement ce numéro comme facteur MFA et aucune vérification supplémentaire ne sera requise. Si d’autres facteurs principaux existent, l’interface affichera une option “Ajouter une autre vérification en 2 étapes” (l’utilisateur peut l’ignorer), ce qui indique clairement que la MFA est activée.
- Données utilisateur existantes : Lorsqu’un utilisateur existant configure la MFA après s’être connecté, il doit d’abord compléter l’authentification principale puis procéder à la configuration MFA. Si le compte contient déjà un numéro de téléphone principal vérifié, la configuration se déroule de la même manière que dans le cas de l’identifiant d’inscription ci-dessus.
Voici trois scénarios courants d’association SMS MFA.
Scénario 1 : Numéro de téléphone utilisé uniquement pour la MFA (Flux typique)
Lorsque le numéro de téléphone n’est pas un des identifiants d’inscription, et uniquement pour la MFA, suivez la séquence de configuration standard :
- S’il n’y a qu’un seul facteur SMS MFA, affichez directement l’interface de configuration pour ce facteur.
- S’il y a plusieurs facteurs MFA principaux, affichez une page de liste “Configurer la MFA” et laissez l’utilisateur choisir le facteur à configurer.
Exemples :
Inscription : Email + Code de vérification email + Mot de passe
| MFA : Code de vérification SMS + Codes de secours
Email + Code de vérification email + Mot de passe
| MFA : Code de vérification SMS + Codes de secours

Inscription : Email + Code de vérification email + Mot de passe
| MFA : Code de vérification SMS + Passkeys + Application d’authentification OTP + Codes de secours
Email + Code de vérification email + Mot de passe
| MFA : Code de vérification SMS + Passkeys + Application d’authentification OTP + Codes de secours

Scénario 2 : Numéro vérifié comme identifiant d’inscription
Si le numéro de téléphone est l’identifiant d’inscription et que l’utilisateur l’a déjà vérifié avec un code SMS lors de l’inscription, le système associera automatiquement ce numéro comme facteur MFA — aucune vérification supplémentaire n’est nécessaire.
Exemples :
Inscription : Numéro de téléphone + Code de vérification SMS + Mot de passe
| MFA : Code de vérification SMS + Codes de secours
Numéro de téléphone + Code de vérification SMS + Mot de passe
| MFA : Code de vérification SMS + Codes de secours

Scénario 3 : Numéro vérifié mais plusieurs facteurs principaux disponibles
Si le numéro de téléphone a été vérifié à l’inscription (comme identifiant d’inscription) mais que le compte dispose de plusieurs facteurs MFA principaux (par exemple, SMS plus passkeys ou applications d’authentification), l’interface invitera l’utilisateur avec “Ajouter une autre vérification en 2 étapes”. L’utilisateur peut choisir d’ajouter un autre facteur ou d’ignorer ; l’invite indique également clairement que la MFA est déjà activée.
Exemples :
Inscription : Numéro de téléphone + Code de vérification SMS + Mot de passe
| MFA : Code de vérification SMS + Passkeys + Application d’authentification OTP + Codes de secours
Numéro de téléphone + Code de vérification SMS + Mot de passe
| MFA : Code de vérification SMS + Passkeys + Application d’authentification OTP + Codes de secours

Flux de vérification SMS MFA
Lorsqu’un utilisateur avec SMS MFA activé se connecte, après avoir complété avec succès l’authentification principale (1FA), il sera invité à vérifier son identité à l’aide du code de vérification SMS comme second facteur d’authentification (2FA).
Si plusieurs facteurs MFA sont disponibles, les utilisateurs peuvent sélectionner parmi leurs facteurs configurés. Le système détermine quel facteur MFA afficher en premier selon l’ordre de priorité spécifié dans Configurer la MFA.
Exemples :
Connexion : Adresse email + Mot de passe
| MFA : Code de vérification SMS (dernier utilisé) / Application d’authentification OTP / Codes de secours
Adresse email + Mot de passe
| MFA : Code de vérification SMS (dernier utilisé) / Application d’authentification OTP / Codes de secours

Gestion des erreurs
-
Numéro de téléphone non associé
- Code d’erreur :
session.mfa.mfa_factor_not_enabled
- Traitement : Inviter l’utilisateur à associer d’abord un numéro de téléphone
- Code d’erreur :
-
Code de vérification incorrect
- Code d’erreur :
verification_code.code_mismatch
- Traitement : Demander à l’utilisateur de ressaisir, limiter le nombre de tentatives
- Code d’erreur :
-
Code de vérification expiré
- Code d’erreur :
verification_code.expired
- Traitement : Inviter l’utilisateur à demander un nouveau code de vérification
- Code d’erreur :
-
Limite de fréquence d’envoi dépassée
- Code d’erreur :
connector.rate_limit_exceeded
- Traitement : Afficher le temps d’attente, limiter les renvois
- Code d’erreur :