【发布时间】:2019-08-29 03:58:09
【问题描述】:
我正在尝试使用启用双重身份验证的office365电子邮件帐户发送电子邮件。它给出了身份验证失败错误。对于尚未启用双因素身份验证的电子邮件帐户,效果很好。如何解决这个问题?
using (SmtpClient client = new SmtpClient())
{
client.Port = Convert.ToInt32(appSettings["Port"]);
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Host = "smtp.office365.com";
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(SenderMailAddress, SenderMailPassword);
email.Subject = String.Format("{0}", txtMailSubject.Text);
//
email.Body = String.Format("{0}", text);
email.IsBodyHtml = true;
client.Send(email);
}
错误信息是
System.Net.Mail.SmtpException:SMTP 服务器需要安全 连接或客户端未通过身份验证。服务器响应 是:5.7.1 客户端未在 System.Net.Mail.MailCommand.CheckResponse
【问题讨论】:
-
你可以通过使用App Passwords来解决这个问题
-
@Manusha 您是否使用 Brendan Green 提供的解决方案解决了您的问题?
-
@Marc 不,我找不到解决方案。因此,我从该电子邮件帐户中删除了两因素身份验证。
-
在account.activedirectory.windowsazure.com/AppPasswords.aspx 创建和使用应用密码 您的交易所管理员必须为 2FA 用户启用此功能。文档:docs.microsoft.com/en-us/azure/active-directory/user-help/…
标签: c# asp.net email office365 two-factor-authentication