9

我正在使用 Office365 Web 应用程序 SMTP 从 Asp.Net 发送电子邮件,但它总是抛出以下错误!

System.Net.Mail.SmtpException:SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.1 客户端未在 System.Net.Mail.MailCommand.CheckResponse 进行身份验证

下面给出了 web.config - 更改了用户名和密码

<network enableSsl="true"  host="pod51007.outlook.com" userName="XXXX" password="XXXXX" port="587" defaultCredentials="false" />
4

2 回答 2

3

我有同样的问题并解决了:

Dim client As SmtpClient = New SmtpClient()
client.Credentials = New System.Net.NetworkCredential("your user", "your password")
client.Port = 587 
client.Host = "smtp.office365.com"

这条指令很重要,没有它们是行不通的:

client.UseDefaultCredentials = False
client.DeliveryMethod = SmtpDeliveryMethod.Network
client.EnableSsl = True
于 2014-09-16T19:04:10.060 回答
2

我认为错误消息具有误导性(与大多数 Microsoft 错误一样!) - 错误代码看起来与 SMTP 错误非常相似,而 5.7.1 是中继错误。您可能需要使用 Microsoft 提供的管理门户指定您的开发/生产公共IP 地址。

于 2013-01-06T16:48:15.683 回答