5

我花了几个小时来解决这个问题,现在我放弃了。

我希望有人可以帮助我。

SSRS 2008 R2 报表服务器已启动并运行,我使用 BIDS 设计了一个示例报表并成功部署。

作为管理员,我可以查看所有内容并运行示例报告。

我在这里想要实现的是限制用户查看文件夹和报告的访问权限。

这就是我为实现这一目标所做的工作:

  1. 在本地服务器(安装 SQL 服务器的地方)创建了几个组

    SQLReportUsers - Users who has access to SQL Server Reporting Services (Web) 
    Finance - Users who can access to Finance folder in Home Folder
    SalesTeam - Users who can access to SalesTeam Folder in Home folder
    
  2. 我创建了用户并将他们分配给财务/销售团队组之一,他们都属于 SQLReportUsers 组。

  3. 拥有 SQLReportUsers 组的原因是甚至限制任何随机用户访问报告服务。创建“每个人”将允许访问它(即使他们无法看到没有访问项目(文件夹、报告)的权限的任何内容。在 Home foder 中,我将 SQLReportUsers 作为浏览器。

  4. 部署到 Finance 文件夹和 SalesTeam 文件夹的示例报表。数据源和数据集位于主文件夹中,其他用户看不到它们(我删除了)

  5. 我在 SQL Server 中创建了 SQLReport 用户帐户,我想将其用作访问 SQL 中数据的中心点。然后在数据源的属性(现在只有一个)下,我使用了“在报表服务器中安全存储的凭据”并提供了用户名和密码。测试连接正常。

  6. 我创建了一个测试用户(Windows server 2003)然后分配给 SQLReportUsers 和 Finance。

  7. 打开 Internet Explorer 并成功登录报告服务。正如预期的那样,此用户帐户只能看到财务文件夹。在财务文件夹中,有示例报告。

问题是当我点击报告时,它说

'报告处理过程中发生错误。(rsProcessingAborted) 授予用户“MSERVER-DELL\test2”的权限不足以执行此操作。(rsAccessDenied)'

一切正常,但用户无法打开报告。

我尝试了“安全存储在报表服务器中的凭据”下的所有选项

我尝试了“连接到数据源时用作 Windows 凭据”(不仅是报告帐户,还有我的管理员帐户)以及“在连接到数据源后模拟经过身份验证的用户。

一切都没有奏效。我尝试了所有可能的组合,但没有奏效。

在报告项的处理选项下,我做了'缓存报告的临时副本。几分钟后过期报告副本:在我的管理员访问权限下 30' 然后返回用户帐户,用户可以提取报告。

这意味着我是用户帐户遇到问题的数据源。

我想知道哪里出错了。

你能帮帮我吗?

感谢!

4

5 回答 5

4

我遇到了与此完全相同的问题,并且解决方案几乎与 Ken Mc 所说的完全相同。我试图打开的报告包含共享数据源和共享数据集。我已授予经过身份验证的用户访问数据源的权限,但完全忘记了数据集,而且神秘的错误消息从未让我遇到这个问题。

因此,总而言之,如果您使用任何外部(共享)数据源或数据集,请确保为您在该文件夹上的使用启用正确的安全角色。

于 2012-09-13T20:53:34.030 回答
0

我认为问题确实在您的 DS 上。如果用户有浏览器权限,他应该能够看到报告。

尝试将您的管理员用户凭据添加到数据源,看看它是否有效。

在此处输入图像描述

于 2012-05-31T09:41:16.537 回答
0

数据源连接设置

设置数据源时,连接设置应如下所示。对我来说,您似乎拥有由运行报告集的用户提供的凭据。我错了,但你能把你的数据源设置的截图放上去吗

于 2012-06-01T07:43:34.947 回答
0

我有一个类似的问题。该报告使用了一个共享数据源,该数据源保存在主文件夹下的共享文件夹中。使用报表管理器 (\server\reports),我在共享文件夹上选择安全性并添加具有浏览权限的用户组。那解决了它。我之前已将具有浏览权限的用户组添加到主文件夹属性,并作为系统用户添加到站点设置安全性。

我正在为我的网站使用 Windows 身份验证,所以我只是将域用户添加为安全组,但我确信其他组应该也可以工作。

于 2012-08-27T23:49:58.340 回答
0

尽管问这个问题已经 4 年了,但这仍然是我遇到的第一个问题。所以我认为值得分享有效的修复程序。最终我不得不删除缓存的凭据,如下所述:https ://stackoverflow.com/a/22234961/6576560

基本上,启动控制面板 > 凭证管理器并在那里删除存储的凭证。Windows 一直在缓存错误的凭据,并且不会使用我的实际登录名。

我希望这可以帮助一些未来的读者。

于 2017-01-30T21:20:42.960 回答