535 5.7.139 认证失败,请求不符合认证成功的条件

问题描述 投票:0回答:3

我正在尝试通过nodemailer发送电子邮件。发件人电子邮件是 microsoft azure。但我收到错误响应:'535 5.7.139 身份验证失败,请求不符合成功身份验证的标准。请联系您的管理员。 MFA 已启用。我还生成了应用程序密码。谁能帮我解决这个问题。 发送邮件的代码片段-


var userTransporter = nodemailer.createTransport({
  host: 'smtp.office365.com',
  port: 587,     // secure SMTP
  secure: false,
  auth: {
    user:SENDER_EMAIL,
    pass: SENDER_APP_PASSWORD,
  }
});

    var mailOptions = {
        from: SENDER_EMAIL,
        to: email,
        template: path.join(__dirname, "../public/views/email-verification"),
        context: {
          token: otp,
          email: email,
          url: EMAIL_VERIFICATION_LINK,
          name: user_name
        },
      };
      let mail = await transporter.sendMail(mailOptions);
node.js azure nodemailer
3个回答
4
投票

如果您使用两步身份验证,则需要创建应用程序密码。

登录您的 Microsoft 帐户。

  1. 安全
  2. 高级安全选项
  3. 应用密码
  4. 创建新的应用程序密码
transp: {
    host: smtp.office365.com,
    port: 587,
    secure: false,
    auth: {
        user: '[email protected]',
        pass: 'AppPass'
    }
}

0
投票

我可以在您的代码中看到您正在使用 secure: false 字段。
您可以将 secure: false 字段更改为 secureConnection: false

var userTransporter = nodemailer.createTransport({
  host: 'smtp.office365.com',
  port: 587,     // secure SMTP
  secureConnection: false,
  auth: {
    user:SENDER_EMAIL,
    pass: SENDER_APP_PASSWORD,
  }
});

确保检查您的

package.json
文件中是否添加了 "nodemailer" : "*" 依赖项,如果未添加,请确保添加它。


0
投票

我遇到了同样的问题,但我没有使用 auth var,而是包含了 TLS 连接。

这是我的错误:

Error: Invalid Login: 535 5.7.139 身份验证失败,请求不符合身份验证成功的条件。请联系您的管理员。 [MA1PR01CA0163.INDPRD01.PROD.OUTLOOK.COM 2024-02-07T08:53:06.706Z 08DC2686F75B359F] 在 SMTPConnection._formatError (/app/node_modules/nodemailer/lib/smtp-connection/index.js:790:19) 在 SMTPConnection._actionAUTHComplete (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1542:34) 在 SMTP 连接处。 (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1496:18) 在 SMTPConnection._processResponse (/app/node_modules/nodemailer/lib/smtp-connection/index.js:953:20) 在 SMTPConnection._onData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:755:14) 在 TLSSocket.SMTPConnection._onSocketData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:193:44) 在 TLSSocket.emit (节点:事件:390:28) 在addChunk(节点:内部/流/可读:315:12) 在 ReadAddChunk (节点:内部/流/可读:289:9) 在 TLSSocket.Readable.push (节点:内部/流/可读:228:10) 在 TLSWrap.onStreamRead (节点:内部/stream_base_commons:199:23){ 代码:'EAUTH', response: '535 5.7.139 认证失败,请求不满足认证成功的条件。请联系您的管理员。 [MA1PR01CA0163.INDPRD01.PROD.OUTLOOK.COM 2024-02-07T08:53:06.706Z 08DC2686F75B359F]', 响应代码:535, 命令:“验证登录” }

[电子邮件受保护]开始 节点分布/index.js

附件是我的代码的图像。

© www.soinside.com 2019 - 2024. All rights reserved.