小编Dan*_*Dan的帖子

如何使用SSRS和BIDS自定义安全扩展访问用户角色/权限?

我已经为SSRS 2008r2编写并部署了一个自定义安全扩展,除了尝试从BIDS 2008/Visual Studio中部署报告之外,它还可以很好地工作.

安全扩展的体系结构通过多个权限处理登录,我通过在LogonUser()中创建用户会话来管理它,将其保存在数据库中,然后使用传递的UID在RS Web服务的客户端代理类中加载会话来自服务的cookie,然后重写身份验证票证以包含会话UID以及当前用户的用户角色.然后,可以在自定义授权扩展中使用这些值来管理SSRS操作和对象的用户权限.

我遇到的问题是,从BIDS部署报告时它不起作用.它直接访问服务,因此不需要服务代理类.我已经尝试在HTTP上下文中处理后验证事件,但是由于RS服务没有持久存在会话cookie,因此我无法访问会话值.

那我错过了什么?是否有另一种控制用户角色和权限的方法,不需要在任何地方硬编码用户名?就像我说的那样,可以使用多个权限进行登录,因此无法通过用户名来管理权限(并且想到它会让我感到畏缩).

我想到的一个可能的解决方案是为BIDS编写扩展或插件,它本质上充当了Web服务的代理,这将允许我更好地控制登录过程,但我不知道这是否可行(谷歌没有帮助. ..)

任何帮助都将被感激地接受!

.net c# forms-authentication bids reporting-services

5
推荐指数
1
解决办法
1539
查看次数