使用Windows集成安全性的SSRS 2008用户生成报告订阅 - 可能吗?

时间:2010-06-18 11:16:22

标签: sql-server reporting-services ssrs-2008

目前我的SSRS 2008配置存在问题。这就是我们目前的设置方式。

1台托管SQL Server和SSRS的服务器,没有与sharepoint等集成。用户访问SSRS Web应用程序,然后从那里访问“Report Builder 1.0”,他们可以使用它来创建和运行基于a的报告报告模型。

这一切都是使用Windows身份验证完成的 - 因此他们使用域帐户登录到Web应用程序,然后在加载报表生成器时再次登录。每个域用户都配置为能够登录到SQL Server而不是使用通用SSRS帐户,并且所有上述工作都可以正常工作。

这种设置方式意味着您可以随时告诉哪个用户登录并运行报告 - 无论是网站还是通过报表生成器运行报表。这是此应用程序的要求,因为所有用户都会看到稍微不同版本的数据模型(这由基础视图控制,基于运行查询的域帐户)。因此汤姆可能会从他的查询中获得100行,但哈利只会获得50行等等。

数据源设置为使用集成安全性(通过此域帐户传递给SQL Server)。

当用户在报表生成器中创建报表,然后将其保存到服务器时,会出现问题。当他们登录到Web应用程序并在那里运行报告时 - 它工作正常,但当他们尝试设置电子邮件订阅时,他们收到此消息:

“无法创建订阅,因为未存储用于运行报告的凭据,或者链接的报告,链接不再有效”

一些研究让我认为这归结于集成安全设置,因为SSRS忽略了当前登录的用户帐户或无法使用它来设置订阅。

如果我将数据源设置为使用特定帐户,那么一切都有效 - 但是这会破坏基于用户帐户的数据过滤(显然,现在只需为每个人使用一个帐户!)。

关于如何处理这个问题的任何想法?我是否可以使用配置设置尝试使用集成安全性来实现此功能?任何帮助/意见表示赞赏!

3 个答案:

答案 0 :(得分:0)

要创建报告订阅,您必须满足一些要求:

首先是,

A report that can run unattended (that is, a report that uses stored credentials or no credentials).

要做你想做的事情,我建议你设置数据驱动的订阅。这是一个让你入门的链接。 Data Driven Subscriptions还有几个基本设置的好视频。像this one sqlLunch#8

这是另一个相当不错的演练:Walkthrough

希望这有助于你。

这也是你工具带上的好东西。

答案 1 :(得分:0)

如果您只是将订阅的报告放入文件共享而不是通过电子邮件发送,用户可以填写用户名和密码,因此它将以其身份运行。这样做的唯一问题是当他们更改密码时,他们需要再次将新密码放入订阅中。

我猜他们可能有另一个帐户的密码不会过期而无法运行报告,但这可能不是很好的做法

答案 2 :(得分:0)

您可以做的是在数据库的表中拥有用户列表以及他们的权限,然后设置数据驱动的订阅以获取用户列表并获取他们的权限并相应地过滤报告