0

我试图在桌面计算机上为开发目的设置SSRS 2008。SSRS 2008:ReportViewer无权访问本地报表服务器

以下工作正常:

  • 报告部署本地服务器
  • 上预览在BIDS
  • 访问HTPP报告://本地主机/报告面板

但是,当我将ASP.NET Reportviewer指向报告URL,出现以下错误:

The授予用户“NT-AUTHORITY \ NETWORKSERVICE”的权限不足以执行此操作。 (rsAccessDenied)

我该如何解决这个错误?是否有任何对话框可以将SSRS访问权限授予某些表单身份验证角色?我在这方面搜索了很多,但到目前为止我发现的是过时或相当混乱。

编辑:我的网络应用程序的几个用户将有权访问相同的数据库,所以我需要UserID内置字段(User!UserID)来反映用户的表单身份验证ID。我想实现这一目标的唯一方法是使SSRS与表单身份验证一起工作?

回答

1

您的Web应用程序正在以网络服务的方式运行,因此您尝试连接到报表服务器的用户是。你有几个选择。一,您可以授予网络服务权限执行您正在尝试运行的报告。你可以让你的Web应用程序模拟一个Windows用户,并为报告提供正确的用户权限。三,当你连接到RS时,你可以模仿冒充不同的用户。我相信做最后一个,你将不得不为编程人员编写一些扩展代码,告诉它如何在连接之前模拟,但对于其他两个代码则不会有任何更改。

如果您的网站不是内部网站,您也可以在Forms auth模式下使用报表服务器进行研究,但这会更复杂。

EDIT for 2nd问题: 是的,您需要每个用户在访问RS时都是唯一的,因此您需要使用Forms Auth或Windows验证或编写自己的自定义验证扩展。

+0

我已经将NT-AUTHORITY \ NETWORKSERVICE添加到ReportManager中的用户列表,并为其提供了SystemAdmin和SystemUser角色,但它没有帮助。这就是“授予网络服务权限来执行您正在尝试运行的报告”的含义吗? – 2009-10-01 15:08:49

+0

是的,应该做到了。 – Daniel 2009-10-01 15:14:32

+0

尝试首先进入根文件夹并为网络服务提供Content Manager角色。 – Daniel 2009-10-01 15:15:19

相关问题