SSRS:在报告上显示用户特定数据

时间:2011-05-10 15:51:10

标签: reporting-services ssrs-2008

在SQL Server Reporting Services上,我对报告有以下要求

  1. 使用Active Directory(Windows域帐户)进行报告的用户已通过身份验证
  2. 我们有自定义身份验证数据库,报告中应显示的数据与此身份验证数据库中的用户相关
  3. 需要生成一份报告,列出所有商店的销售数据,“所有数据”只应提供给“管理员”用户
  4. 对于“非管理员”用户,同一报表应仅显示与其关联的单个商店的销售数据。 (不是所有商店的销售数据的完整列表)

    • “管理员”的定义,“非管理员”用户类别在自定义身份验证数据库上定义。
  5. 真的很感激,如果有人能给我指示我应遵循的方法。 如果我要进一步澄清我的要求,请告诉我。

    感谢。

1 个答案:

答案 0 :(得分:2)

在SSRS中,您可以访问用户ID(= User!UserID)。将其设置为报表的内部参数,并将其作为参数传递给数据集查询。

现在,您可以加入数据集查询中的自定义权限表。

使用使用此方法构建的查询来填充“Store”的参数下拉列表。

再次使用该参数并仔细检查用户是否在主查询中具有返回结果的权限。这将避免用户能够手动指定他们没有权限的商店。 (否则,URL访问将允许用户访问他们不应该获得的报告。)

如果有任何意义,请告诉我。