Lien magique et OTP par e-mail
Deux façons de connecter un utilisateur sans mot de passe, toutes deux prouvant le contrôle d'une boîte de réception : un lien qu'il clique, ou un code qu'il saisit. Ni l'une ni l'autre ne stocke de mot de passe, donc aucune n'a de mot de passe à fuiter ou à réinitialiser.
Elles s'activent par des mécanismes différents — le lien est une entrée de stratégie, le code non. Cette asymétrie est la seule chose à ne pas manquer sur cette page.
Lien magique
Une entrée de stratégie. L'utilisateur soumet son e-mail, reçoit un lien à usage unique, et se connecte en le suivant.
auth:
strategies:
- type: magicLink
expirationMinutes: 30
| Propriété | Description |
|---|---|
expirationMinutes |
Durée de vie du lien en minutes (entier positif). Par défaut 15. |
Les 15 minutes par défaut supposent que l'utilisateur attend le courrier. Allongez-les si votre public consulte ses e-mails sur un téléphone, plus tard ; raccourcissez-les si le lien ouvre l'accès à quelque chose de sensible, car un lien vivant dans une boîte de réception est un identifiant vivant.
Le corps du message est rendu à partir du modèle d'e-mail magicLink lorsque vous en fournissez un, avec $url substitué par le lien.
Activer l'OTP par e-mail
L'OTP par e-mail délivre un code numérique à usage unique plutôt qu'un lien — préférable sur un appareil où suivre un lien romprait le parcours, et plus facile à dicter au téléphone.
Il n'existe pas d'entrée de stratégie type: emailOtp. Le flux s'active lorsque vous définissez le modèle d'e-mail emailOtp ; c'est sa présence qui monte le plugin.
auth:
strategies:
- type: emailAndPassword
emailTemplates:
emailOtp:
subject: Your sign-in code
text: 'Your verification code is $code. It expires shortly.'
$code est remplacé par le code à usage unique généré. Notez que le tableau de stratégies ci-dessus ne déclare que emailAndPassword — l'OTP par e-mail accompagne les stratégies que vous avez déclarées, il ne les remplace pas.
Ajouter type: emailOtp à strategies est une erreur de validation. L'union n'accepte que emailAndPassword, magicLink et oauth : une configuration qui devine une stratégie OTP échoue à sovrium validate plutôt que de démarrer sans le flux.
Les deux nécessitent SMTP
Un flux sans mot de passe qui ne peut pas envoyer de courrier ne peut connecter personne. Lorsque SMTP n'est pas défini, l'application démarre avec l'e-mail désactivé et consigne un avertissement — les tentatives de connexion échouent alors silencieusement, l'utilisateur attendant un message jamais envoyé.
Configurez SMTP avant de livrer l'un ou l'autre flux, et préférez conserver emailAndPassword déclaré à leurs côtés pendant ce temps : cela vous laisse une voie d'entrée fonctionnelle si la délivrance du courrier casse. Voir Variables d'environnement pour les réglages SMTP.
Pages connexes
- Présentation des stratégies — le tableau
strategieset comment choisir. - Modèles d'e-mail — les corps
magicLinketemailOtpet leurs variables. - E-mail et mot de passe — la stratégie par identifiants qui les accompagne.
- Variables d'environnement — configuration SMTP et
BASE_URL. - Sessions — la session qu'émet un lien ou un code réussi.
Dernière mise à jour 27 juillet 2026
Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta — les contributions et corrections sont les bienvenues.