首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改为O365邮件服务器后出现SSRS报告订阅错误

更改为O365邮件服务器后出现SSRS报告订阅错误
EN

Stack Overflow用户
提问于 2021-03-29 20:44:39
回答 2查看 416关注 0票数 1

我们有一个订阅,发送邮件给每个顾问,他们的未来几周的计划。两周前,我们已经从本地邮件服务器更改为O365邮件服务器。自从这一变化以来,我注意到一些顾问没有收到他们应该收到的邮件。这让我查看了RS日志,两周前我有6个人没有收到他们的电子邮件,而上周是9个。我检查了他们的邮箱地址中的任何拼写错误,但一切都很好,因为我没有更改这部分设置(当我们仍然有本地邮件服务器时,这是正常的)。

代码语言:javascript
复制
    notification!WindowsService_1!24f8!03/26/2021-16:00:13:: i INFO: Notification 84547a5f-930f-45e6-8085-0e738664c590 completed.  Success: True, Status: Mail sent to a********.d******@*******.com, DeliveryExtension: Report Server Email, Report: OPS Individual Planning For Subscription, Attempt 0
emailextension!WindowsService_1!1a38!03/26/2021-16:00:13:: e ERROR: Error sending email. Exception: System.Net.Mail.SmtpException: Failure sending mail. ---> System.IO.IOException: Authentication failed because the remote party has closed the transport stream.
   at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)
   at System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   at System.Net.Mail.SmtpConnection.Flush()
   at System.Net.Mail.ReadLinesCommand.Send(SmtpConnection conn)
   at System.Net.Mail.EHelloCommand.Send(SmtpConnection conn, String domain)
   at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint)
   at System.Net.Mail.SmtpClient.GetConnection()
   at System.Net.Mail.SmtpClient.Send(MailMessage message)
   --- End of inner exception stack trace ---
   at System.Net.Mail.SmtpClient.Send(MailMessage message)
   at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.Deliver(Notification notification)
notification!WindowsService_1!1a38!03/26/2021-16:00:13:: e ERROR: Error occurred processing subscription 4ee16cfe-5e77-4da9-8433-d62a99d11ea2: Failure sending mail: Failure sending mail.

在第一行,你可以看到一个成功的操作,但是在这之后,你会看到一个失败。“身份验证失败,因为远程方已关闭传输流”。从上周开始,我们还在为SQL Server2016 SP2运行CU15。

我在网上找到的是与TLS相关的,但我已经检查过了,在我们的情况下,1.2是检查过的。另外,如果是TLS,我会觉得有点奇怪,因为这是一个浏览器设置,订阅是由SQL server自己管理的。

如果有人对此有解决方案,请让我知道!

致以良好的问候,凯文

EN

回答 2

Stack Overflow用户

发布于 2021-10-26 12:20:35

我遇到了同样的问题和同样的错误信息。根据评论,我也很困惑为什么有些电子邮件失败了,而另一些却没有。

this article解释了其中的原因:

从2021年9月开始,我们将拒绝一小部分使用TLS1.0进行SMTP身份验证的连接。客户端应与提交过程中可能发生的任何其他临时错误一样重试。随着时间的推移,我们将增加拒绝连接的百分比,导致发送延迟,越来越多的客户应该注意到这一点

是否确定已设置TLS 1.2?

票数 2
EN

Stack Overflow用户

发布于 2021-10-27 01:57:56

我可以确认,根据我对Searle1986的回答的评论,微软的guide on enable TLS 1.2解决了我的SSRS服务器的问题。

我验证了安装SSRS实例(而不是数据库*)的服务器只安装了WindowsFramework4.5版,并且我有挂起的.NET更新以将其升级到4.8版。

我还必须遵循部分,并将推荐的注册表项添加到我的服务器。在这两件事和重启服务器之后,我所有的SSRS订阅电子邮件都可以再次工作了。

因为这是一个间歇性的问题,一些电子邮件发出了,我能够在修复之前查看其中一封电子邮件的标题,并确认它使用的是TLS1.0(标题显示为"TLS1_0")。修复后,我订阅的所有电子邮件的标题中都有tls1.2(现在显示为"TLS1_2")。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66854430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档