0

我有一个应用程序 .net 搜索报表服务器上的文件夹并读取该文件夹内的报表并显示在 asp.net 页面上。asp.net 用户的权限可以很好地在网站上部署和执行。

现在,我想让用户部署在“我的报告”文件夹中,所以他们只能看到他们的报告。(用户可以访问报告服务器并使用报告生成器)。

我搜索并找不到解决方案:我想授予用户权限(与在 asp.net 服务器上运行的相同),以访问所有用户的所有“我的报告”文件夹(用户文件夹),所以我可以在网站上的用户文件夹中执行报告。

我将 asp.net 服务器用户设置为报表服务器的本地管理员,但拥有该权限的 te 用户只能看到文件夹的内容,该用户无法执行报表。知道有什么问题吗?

4

1 回答 1

0

我终于找到了解决方案,并且不涉及将用户添加到机器的本地管理员。

我使用了IAuthorizationExtension。我发现这个为所有用户启用匿名访问的示例是一个开始。

在我的实现中,我使用了WindowsAuthorization,因为我想保留现有的授权并授予一个特定用户的访问权限。在所有CheckAccess方法上,我检查用户是否是我想要授予访问权限的用户并返回 true,否则返回WindowsAuthorization.CheckAccess(...). 在接口的所有其他方法上,我也使用了WindowsAuthorization.

使用此解决方案,运行网站的用户可以访问报告服务的所有内容。

于 2013-01-15T16:45:18.750 回答