如何在SSRS for Security中实现一个存储过程?

时间:2012-02-09 16:08:10

标签: security tsql ssrs-2008

我开发了65份SSRS 2008报告,现在我想添加一层安全性。为了安全起见,我创建了一个存储过程,它选择用户的Windows ID作为参数,并返回数据库中应该有权访问的所有客户端的列表。然后,我的主存储过程加入此客户端列表,以过滤用户有权访问的所有匹配记录。

我将安全存储过程中的逻辑添加到主存储过程中,并且它成功运行。但是我的老板要我设置安全性,以便每个RDL文件链接到这个安全存储过程。这样我们只需要更改一个存储过程中的安全逻辑,而不是更改65个sprocs。所以我想从主sproc中删除安全逻辑,而是为每个报告添加安全性sproc。我该怎么做?

1 个答案:

答案 0 :(得分:0)

如果您使用的是集成安全性,那么创建一个使用SUSER_SNAME()过滤相应客户端的视图会更好。在所有存储过程中加入此视图。因此,视图成为安全过滤器,您不必在65个SSRS报告中乱七八糟,IMO更像是维护噩梦,而不是在后端做事。

相关问题