SSRS ReportViewer控制凭据

时间:2012-08-03 15:18:08

标签: c# reporting-services reportviewer

我正在开发一个最近创建的服务器,该服务器用于存放从SSRS 05到08的SSRS迁移版本。

以前,我们没有通过报表查看器控件从IIS服务器连接到SSRS服务器的问题,我们当时没有提供凭据。现在,当我们尝试使用观众时,我们会回来; “请求失败,HTTP状态为401:未经授权。”

显然,这是一个我们以前从未有过的新问题,即使我们从未使用过凭证。这是我的第一个问题......新服务器和旧服务器位于同一个“地方”。 IP,域,子网是一样的。用户设置相同,SSRS配置似乎相同。可能导致错误的区别是什么?

此外,我一直在做一些测试,我意识到我可以访问该服务器并通过将我在Visual Studio 2008中运行的开发环境指向该服务器而不使用凭据来获取该环境中的报告。我假设没有将报表查看器对象serverreport.reportservercredentials设置为某个东西,并将该属性保留为空值,它正在使用其他东西?可能是我的Windows用户凭据?访问报告服务器。 (这将是我的第二个问题。)

最后。我决定咬紧牙关并在报表查看器上实现凭据。当我在为此目的创建的ssrs服务器上创建本地用户的凭据,并且还作为浏览器在报表管理器中列出时,我收到请求失败错误。我的第三个问题是;对于这种类型的实现,我有没有想到的东西?

如果我的帖子中有任何问题或事情需要澄清,请告诉我。

1 个答案:

答案 0 :(得分:1)

我最终走了另一条路。

有两个问题......首先。 Web服务器上的应用程序作为本地用户运行。并且旧的SSRS服务器已设置为接受匿名用户。

为了解决这个问题,我让我们的网络工作人员创建了一个新的域帐户。然后,我更改了应用程序的应用程序池标识以使用该域帐户,并为其提供了临时文件夹的列表和写入权限,并将其添加到Windows中的正确组中。

然后,我在报告服务器上提供了域用户浏览功能。

这适用于2.0多个应用程序...现在我只需要确定用户需要访问1.1个应用程序的文件夹。

(ps ...我还发现当我通过.net中的报表查看器控件传递凭据时,域用户实际工作。)