You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6使用System.Net.Mail发邮件遇5.7.57认证错误求助

问题:使用System.Net.Mail发送邮件时出现"5.7.57 Client was not authenticated to send anonymous MAIL FROM"错误

我尝试通过System.Net.Mail发送邮件,代码如下:

var to = new MailAddress(notification.SendTo);

var from = new MailAddress(_smtpSettings.SMTPSendFrom);
var message = new MailMessage(from, to)
{
    Subject = notification.Subject,
    Body = notification.Message,
    IsBodyHtml = true
};
var client = new SmtpClient()
{
    Host = _smtpSettings.SMTPServer,
    Port = _smtpSettings.SMTPPort,
    EnableSsl = _smtpSettings.SMTPUseSSL,

    UseDefaultCredentials = false,
    DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network
};
if (_smtpSettings.SMTPDomain == string.Empty)
{
    client.Credentials = new NetworkCredential(_smtpSettings.SMTPLogin, _smtpSettings.SMTPPassword);
}
else
{
    client.Credentials = new NetworkCredential(_smtpSettings.SMTPLogin, _smtpSettings.SMTPPassword, _smtpSettings.SMTPDomain);
}

client.Send(message);

运行时遇到错误:5.7.57 Client was not authenticated to send anonymous MAIL FROM

我已参数化所有可配置的设置,尝试过传递域名、切换UseDefaultCredentials的true/false值。另外,我有一个PowerShell脚本,使用同一账号在同一机器上可成功发送邮件(我登录时运行脚本,而应用程序通过应用池ID登录)。补充信息:邮件服务器为Exchange服务器,发送机器是Azure托管Web服务器。


解决方案建议

  • 检查应用池身份的Exchange权限:PowerShell脚本用你的登录账号运行,而应用程序依赖应用池ID。Exchange可能限制了该应用池对应AD账号的SMTP发信权限,需要在Exchange后台为该账号配置允许发信的权限,或者将应用池身份切换为能成功发信的账号(注意评估安全风险)。

  • 核对SMTP端口与SSL配置:Exchange的SMTP常用端口为587(STARTTLS)或465(SSL),确保配置的Port和EnableSsl与Exchange服务器要求完全匹配。例如使用587端口时,EnableSsl需设为true,确保先建立TLS连接再执行认证。

  • 显式指定NTLM认证规则:针对Exchange服务器,可尝试强制设置认证方式为NTLM,在配置Credentials后添加以下代码:

    client.TargetName = "NTLM/" + _smtpSettings.SMTPServer;
    
  • 验证发件人地址与认证账号的一致性:Exchange可能要求发件人地址(SMTPSendFrom)必须与认证账号(SMTPLogin)对应的邮箱一致,或者需要在Exchange中配置该账号允许代发目标地址的邮件。

  • 捕获详细异常定位问题:在发送代码外层添加异常捕获,获取更精准的错误信息:

    try
    {
        client.Send(message);
    }
    catch (SmtpException ex)
    {
        // 记录ex.StatusCode、完整错误信息及堆栈
        throw;
    }
    

内容的提问来源于stack exchange,提问作者Steve Schlichter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 23:22:42