身份验证失败,因为远程方已关闭传输流 - 发送 smtp 错误
Posted
技术标签:
【中文标题】身份验证失败,因为远程方已关闭传输流 - 发送 smtp 错误【英文标题】:Authentication failed because the remote party has closed the transport stream - smtp error sending 【发布时间】:2021-03-15 19:03:12 【问题描述】:我们的一个自制应用程序使用 o365 通过 smtp 发送电子邮件。由于某种原因,它刚刚停止工作,这些是我们遇到的错误。
“SmtpEx: System.Net.Mail.SmtpException: 发送邮件失败。---> System.IO.IOException: 身份验证失败,因为远程方已关闭传输流。”
TLS 1.1 和 1.2 设置为发送消息的服务器上的选项,我们使用以下 SMTP 服务器
Texttenantname-com.mail.protection.outlook.com 端口 25
我通过 powershell 使用相同的凭据和 smtp 服务器在服务器上进行测试并且工作正常。我正在尝试获得微软,但一直很艰难。
服务器 2012r2
【问题讨论】:
【参考方案1】:刚刚遇到同样的问题,能够通过指定安全协议来解决它(我的情况是一个 .NET 4 应用程序,因此是强制转换):
ServicePointManager.SecurityProtocol = (SecurityProtocolType)48 | (SecurityProtocolType)192 | (SecurityProtocolType)768 | (SecurityProtocolType)3072;
来源:https://codeshare.co.uk/blog/how-to-fix-the-error-authentication-failed-because-the-remote-party-has-closed-the-transport-stream/
【讨论】:
感谢曼海姆!在尝试您的解决方案之前,我尝试了一切都没有成功。我使用.Net 4.8。以上是关于身份验证失败,因为远程方已关闭传输流 - 发送 smtp 错误的主要内容,如果未能解决你的问题,请参考以下文章
iOS (APN) - 身份验证失败,因为远程方已关闭 C# 中的传输流