【发布时间】:2019-01-28 07:14:03
【问题描述】:
我需要使用公司共享帐户(出于隐私原因删除了电子邮件地址)发送通知,但一直失败。我尝试了所有可能的代码,但没有成功。
所以,我对这个帐户有点怀疑。然后我使用了我的 Office 365 工作帐户,它按预期工作。但我仍然需要使用共享帐户。
错误信息如下:
Message = "SMTP 服务器需要安全连接或客户端 未通过身份验证。服务器响应为:5.7.57 SMTP;客户 在 MAIL FROM 期间未通过身份验证发送匿名邮件 [D*********8.na***11.prod.outlook.com]"
var message = new MailMessage("from", "to", "MySubject", "MyBody");
SmtpClient client = new SmtpClient("outlook.office365.com");
client.EnableSsl = true;
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential("username", "password");
client.Send(message);
【问题讨论】:
-
我的建议是尝试仔细检查(我想你们都准备好了)服务器等是否正确,如果尝试从另一个地方的另一台 PC 发送电子邮件到看看它是否发送。我确实有并且仍然有类似的问题,在安哥拉,电子邮件帐户无法使用,并且在我的工作电脑(葡萄牙)上可以 100% 工作,甚至制作了一个测试程序,我在安哥拉的电脑上按下按钮(远程桌面)然后在我的电脑上(比如每次点击 4 秒)和我的电脑上发送,而在安哥拉的电脑上它不发送
-
感谢您的回复。实际上,我已经交叉验证了用户名、密码、服务器等,并且都是正确的。另外,我已经验证了不同的环境和相同的行为。我要强调的是它适用于任何用户帐户,但不适用于服务/共享帐户。我正在尝试查看服务帐户是否需要任何特定权限。显然,有相同的文档。
标签: c# smtp office365api smtp-auth