断电后出现SMTP身份验证异常

本文关键字:身份验证 异常 SMTP 断电 | 更新日期: 2023-09-27 18:04:39

异常类型:AuthenticationException
异常消息:根据验证过程,远程证书无效。

我使用谷歌的SMTP服务器从ASP.Net应用程序发送电子邮件。直到昨天,下面的代码已经用于成功发送消息一年多了,这与服务器因停电而停机有关。

这是我正在使用的代码。

c#

public static MailMessage CreateMailMessage(List<string> destination, string subject, string body)
{
    MailMessage m = new MailMessage();
    foreach (string email in destination)
    {
        m.To.Add(email);
    }
    m.From = new MailAddress(from);
    m.Subject = subject;
    m.Body = body;
    m.IsBodyHtml = true;
    return m;
}
public static void SendMailMessage(MailMessage mailMessage)
{
    SmtpClient smtpClient = new SmtpClient();
    smtpClient.Send(mailMessage);
}

web.config

<configuration>
  <configSections>
    <section name="resizer" type="ImageResizer.ResizerSection" requirePermission="false" />
  </configSections>
  <connectionStrings configSource="ConnectionStrings.config" />
  <system.net>
    <mailSettings>
      <smtp configSource="SmtpSettings.config" />
    </mailSettings>
  </system.net>
<configuration>

SmtpSettings.config

<smtp deliveryMethod="Network">
  <network host="smtp.gmail.com" port="587" enableSsl="true" userName="username" password="password"/>
</smtp>

我已经在另一台服务器上测试了代码,它可以正常工作。服务器上是否存在尚未启动的服务?

断电后出现SMTP身份验证异常

问题与SSL证书验证有关。您的X.509证书数据库可能已损坏,或者链中的某个证书(用于验证Google的证书(由于某种原因不再受信任。这甚至可能是谷歌SSL证书的问题。

遗憾的是,我的回答可能没有太大帮助,但这是我所能想到的。