【问题标题】:SQL Server 2012 Reporting Service Authentication Required需要 SQL Server 2012 报告服务身份验证
【发布时间】:2012-05-14 20:38:46
【问题描述】:

我们的团队创建了一个 ASP 网站,该网站使用 reportviewer 控件从报表服务器呈现报表。

在主报告中,我们使用了转到 URL 以在新窗口(弹出)中显示子报告。我在 IIS 服务器上托管了这个网站。

当我们尝试访问主报告(即 Home.aspx)时,我们正在从报告服务器获取主报告的内容,它没有要求我提供凭据。

但是当我们点击子报告的链接时。它要求弹出窗口的凭据。我不明白为什么它只要求弹出窗口而不是主报告的凭据。如果我的 SSRS 配置不正确,那么它也应该询问主报告的凭据,但它只会提示弹出窗口。

我们使用的是 SSRS 2008。SSRS 和 IIS 都在同一台机器上。我们使用了 javascript 函数来表达 Go to URL。

以下是两种场景的屏幕截图。

主报告 - 在新弹出窗口中打开的子报告的链接(此处不询问凭据)

子报表弹出窗口(提示输入凭据)

【问题讨论】:

  • 您是否在两个报告的数据集上使用相同的数据源?
  • 只是为了测试,尝试设置子报表在主报表里面运行

标签: ssrs-2008 reporting-services


【解决方案1】:

现在我考虑了更长的时间,“转到 URL”是一个报告操作,因此您并没有完全使用“子报告”。子报表是在另一个报表中打开报表的组件。

更接近您需要的操作是钻取报告,但这会在实际报告的相同上下文中打开新报告。

关于凭据,我认为这是在询问,因为您是新跃点。

按照我的思路(这只是一个猜测,如果我说一些荒谬的话,请原谅我),当您调用 report1 时,连接转到 report1 -> 数据源(1 跳,很好)。当您从report1调用report2时,report1将凭据发送到report2(1跳)并且report2尝试连接到数据源(第二跳),并且AD仅支持一跳,这就是我认为它请求凭据的原因。

也许如果你配置kerberos身份验证,它可能会工作......

【讨论】:

  • 谢谢@Diego,我们会试一试并报告:)
  • 我们最终无法使用 Kerberos,因为我们无法对我们的服务器进行此类更改!我毫不怀疑它会起作用,因为我们已经删除了身份验证,从而消除了登录问题,因此我们可以在我们的网络上试用报告。感谢您的所有帮助!
【解决方案2】:

我们最终无法使用 Kerberos,因为我们无法对我们的服务器进行此类更改。我毫不怀疑它会起作用,因为我们已经删除了身份验证,从而消除了登录问题,因此我们可以在我们的网络上试用报告。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 2020-12-13
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多