2013-02-27 97 views
0

我继承了使用ReportViewer的ASP.NET网站。如何使用ReportViewer配置从网站到SSRS的连接

我遇到的问题是,用于连接到报表服务器的凭据是那些具有管理权限的Windows用户。我想将它们更改为具有所需最低凭证的Windows用户。

我的主数据库现在使用Windows身份验证,所以我已经拥有一个具有db_datareader,db_datawriter访问主数据库的windows用户。所以我给了ReportServer数据库同样的用户db_datareader权限。并且在ReportServer上使用的共享数据源中,我将“使用连接”设置为“运行报告的用户提供的凭据”,并将“连接到数据源时用作Windows凭据”设置为true。

然而,当我更改网站使用的是用户而不是管理员用户,我得到“授权用户‘域名\用户名’的权限不足,无法执行此操作。(rsAccessDenied)”

其他什么我需要授予该用户的权限才能使其运行?

回答

1

听起来好像用户在Reporting Services中没有相应报告的权限。您可能需要在Reporting Services中授予该用户权限。您可以从Report Manager网站上执行此操作。

我知道您授予了Reporting Services数据库的用户权限,但这与向Reporting Services授予特定报告的权限并不相同。

+0

非常感谢安。我终于设法追踪如何通过报告管理器为用户提供权限。我已经把我真正需要做的事情按照我想要的方式在单独的答案中运行 – Colin 2013-02-28 10:05:00

0

确定这就是我实际做 -

使用报表管理:该网站是使用

  1. 分配系统用户角色对域名\用户名。请参阅system-level permission

  2. 将指定的浏览器角色分配给同一用户。见item-level permission。现在,网站中的报表查看器正常工作,但它会提示用户输入凭据(我不想)。

  3. 将共享数据源更改为“使用Windows集成安全性连接”。现在报告在网站上运行。

然后,作为Sql Server中的一个实验,我从ReportServer数据库中删除了用户。该网站仍然有效,所以我想这个权限从来没有要求。

相关问题