为什么我无法为Sql Server Reporting Services强制使用SSL?

问题描述:

我试图在Windows Server 2008上设置SSRS 2008。它似乎按预期工作,当我通过HTTP访问Web界面时,但是当使用HTTPS时出现以下错误:“底层连接已关闭:意外发送错误发生。“为什么我无法为Sql Server Reporting Services强制使用SSL?

从查看日志文件可以看出内部异常是“System.Net.Sockets.SocketException:现有连接被远程主机强制关闭”。这让我想,在从报表管理器到Web服务的服务调用期间发生错误。

我已经使用使用我自己的CA证书签名的证书,在非默认端口(8091)上配置了Web服务和报告管理器,并使用SSL绑定。服务器证书安装在IIS7中(并由IIS7使用),并将CA证书添加到“本地计算机”证书存储中的“受信任的根证书颁发机构”。

如果客户端应用程序是我自己的.NET应用程序,在网络中搜索特定的错误消息给了我很多关于如何处理该问题的信息。最流行的解决方案似乎是关于将属性“ServicePointManager.SecurityProtocol”设置为“SecurityProtocolType.Ssl3”,但我认为当客户端是预编译的Web应用程序(报表管理器)时,我无法做到这一点。

任何想法?

UPDATE:现在请求失败,HTTP状态401:未经授权“在日志文件中的堆栈跟踪告诉我,发生异常时在SoapHttpClientProtocol.ReadResponse,这是我所期望的是‘在SOAP-后’。处理比我之前所具有的错误。

什么新的想法?

+0

我第二个这个问题,有类似的问题...你有没有找到任何解决方案? – AviD 2009-06-17 18:05:03

解决这个问题已在这里找到:http://prologika.com/CS/forums/t/946.aspx

在rsreportserver.config我已经取代本节:

<AuthenticationTypes> 
    <RSWindowsNegotiate/> 
    <RSWindowsNTLM/> 
</AuthenticationTypes> 

与此:

<AuthenticationTypes> 
    <RSWindowsBasic/> 
</AuthenticationTypes> 

和现在的一切工作。

退房this link,帮我缩小了我的问题(这是从你的不同,我认为)。

+0

不幸的是,这个链接似乎没有包含我面临的问题的任何解决方案。在添加和删除HTTP(S)绑定很多次之后 - 我认为我没有改变任何其他内容 - 当尝试访问报告管理器时,现在遇到新的错误消息:“请求失败,出现HTTP状态401:未经授权。“ 日志文件中的堆栈跟踪告诉我SoapHttpClientProtocol.ReadResponse发生异常,我期望在SOAP处理中“稍后”比我之前的错误。 有没有什么新点子? – 2009-06-24 21:12:17