2012-03-26 52 views
1

我们有以下结构:Reporting Services的安全性 - SQL登录和Windows身份验证的混合

  • ReportsDatabase X
  • 报告Ÿ
  • 报告Y于X使用几个表
  • 多个用户访问ÿ

报告Y使用全局变量UserID过滤每个用户的数据。 暂时我们已经授予这些用户访问所有X的权利,因为Y中的数据来源于X中的不同表格。问题是,如果用户知道X的地址,那么他们可以访问那里的所有数据。

我的同事建议创建一个SQL登录并在Y的DataSource中使用它,然后删除用户对X的访问,但仍在报告中使用Users!UserID。这会工作吗?

+0

谢谢马克 - 请看下面的答案;迭戈拼写“跑步”错误....我应该编辑,还是你会? – whytheq 2012-03-26 11:37:11

回答

1

为什么用户需要访问X上的表? 您是否基于用户凭证运行报告? 该报告使用在数据源上设置的配置访问数据库,我不认为您在那里设置了用户的配置。

尝试从正在运行报表的用户中删除对X表上的表的访问(但要确保在数据源上设置的连接数据库的acc能够访问X上的表)

+0

所以看起来我的同事的建议与你自己一致;我们会做一些进一步的测试,看看它是否会起作用 – whytheq 2012-03-26 11:38:39