我有一个报告,其中包含参数 ClientName ,并且我在下拉列表中有3个客户端,因此我的要求是特定客户端的用户必须只查看其客户端名称而不显示其他客户端名称。是否可以这样做?我可以在参数级别向用户强加任何安全性吗?
答案 0 :(得分:0)
我以前做过这种方式并不优雅,但确实有效。
在我的数据库中创建一个参数表,并映射该用户可以使用哪些参数的Windows用户ID,例如
User Clientname
----------------------------
domain\jdoe Company1
domain\mjones Company2
domain\jdoe Company3
使用全局SSRS功能“UserID”来获取正在访问报告的当前用户。
将UserID作为参数传递给将在运行时填充下拉列表的查询,例如
Select Clientname from table where user like '@Userid'
这样,只有与查看报告的用户关联的客户名称才会显示在参数下拉框中。
然而,据我所知,维护超过少数用户并且不支持ActiveDirectory组是很烦人的。