SMTP服务器需要安全连接,或者客户端未通过身份验证。服务器响应为:5.7.0需要身份验证

时间:2019-12-19 17:05:25

标签: c# smtp

我的网站使用gmail smtp发送电子邮件。最近什么都没有改变,今天突然停止了。没有代码或密码已更改。这似乎是一个常见问题,许多人提出了相同的解决方案,但不幸的是,这些解决方案今天对我不起作用。

我的SMTP代码

using (var mail = new MailMessage())
{
    const string smtp = "smtp.gmail.com";
    const int port = 587;

    var loginInfo = new NetworkCredential(account, password);

    mail.From = new MailAddress(account);
    mail.To.Add(new MailAddress(toAddress));
    mail.Subject = subject;
    mail.Body = message.ToString();
    mail.IsBodyHtml = true;

    try
    {
        using (var smtpClient = new SmtpClient(smtp, port))
        {
            smtpClient.EnableSsl = KnownKeys.EnableSSL;
            smtpClient.UseDefaultCredentials = false;
            smtpClient.Credentials = loginInfo;
            smtpClient.Send(mail);
        }
    }

    finally
    {
        //dispose the client
        mail.Dispose();
    }

}

我尝试过的

  1. 重置密码
  2. 设置smtpClient.TargetName =“ STARTTLS / smtp.gmail.com”;
  3. 再次选中允许不安全的应用程序
  4. 已启用已启用验证的SSL
  5. 尝试使用端口465

1 个答案:

答案 0 :(得分:0)

问题是您正在防火墙等Sophos后面运行应用程序,因此它阻止了与应用程序的出站通信