Nodemailer double authentification

Bonjour,

j'essaye de configurer un formulaire de contacte sur mon site qui m'enverrait les infos par mail en utilisant Outlook.

J'ai rentré ces infos :

const transporter = nodemailer.createTransport({
  host: 'ssl0.ovh.net',
  port: 465,
  secure: true, // true pour le port 465
  auth: {
    user: 'contact@monsite.fr',
    pass: process.env.EMAIL_PASS // Utilisation du mot de passe depuis les variables d'environnement
  }
});

J'ai essayé l'autre port également mais ça ne fonctionne pas.

J'ai la double authentification à mon compte OVH.

ChatGPT me dit que ça pourrait être le problème et qu'il me faudrait un "mot de passe d'application" relié à mon adresse mail.

J'ai cherché dans la doc et sur mon compte en ligne je ne vois rien correspondant.

Pourriez-vous m'aider svp ?

Bonjour,

Non il n'y a pas 2FA sur le mail SMTP.

Par contre essayez secure: no et le port 587. La connexion va négocier STARTTLS et ce sera sécurisé.

Bous pouvez forcer TLS, voyez https://nodemailer.com/smtp/

Bonjour,

ça ne fonctionne pas.

Erreur lors de l'envoi de l'email : Error: Invalid login: 535 5.7.1 Authentication failed
code: 'EAUTH',
response: '535 5.7.1 Authentication failed',
responseCode: 535,
command: 'AUTH PLAIN'

Bonjour,

Dites-moi, dans ce que vous avez recopié ci-dessus, que vous n'avez pas mis littéralement 'contact@monsite.fr' et que vous n'avez pas mis 'process.env.EMAIL_PASS' ?

auth: {
    user: 'contact@monsite.fr',
    pass: process.env.EMAIL_PASS // Utilisation du mot de passe depuis les variables d'environnement
  }

Bonjour,

Je n'ai mis aucune donnée sensible dans mon frontend.

Dans mon backend j'ai créé une route voir pièce jointe.

Dans mon .env j'ai la véritable adresse mail et le mot de passe de connexion à mon adresse mail.

Je vous suggère de changer le mot de passe de cette boîte

- avec uniquement des lettres, chiffres et caractères spéciaux "standard" comme "-" ou "."

- ceci déverrouillera la boîte si une alerte d'envoi de spam vous a été communiquée précédemment.

Merci beaucoup j'ai changé le mot de passe et ça fonctionne.