【问题标题】:View Report From Web Application Without Prompting Authentication - Reporting Services 2017在不提示身份验证的情况下从 Web 应用程序查看报告 - Reporting Services 2017
【发布时间】:2021-01-23 01:51:33
【问题描述】:

我的公司刚刚完成了 2017 年报告服务服务器的设置。 该服务在域名下运行。 在同一台服务器上,已设置 IIS 以在 ASP.NET 中运行 Web 应用程序,该应用程序将从报表查看器中提供报表服务。 IIS 当前使用默认应用程序池运行。

目标:我们希望客户能够从网络应用程序访问报告,而无需从任何地方填写用户名和密码,无论是在 Intranet 还是 Internet 上。

在此之前,我们有类似设置的 ssrs 2008,但对于身份验证,我们使用匿名身份验证,这是我们想要的,他们可以从任何地方查看报告。 但是从微软网站,他们说最新版本不再支持身份验证,我们尝试这样做会导致错误 401:未授权。

目前,我正在尝试进行 kerberos 身份验证, 我做过的事情:

  1. 报告服务帐户的 SPN。
  2. 报告服务帐户的委托。
  3. Web 应用程序 web.config 我添加了 authentication mode="Windows" identity impersonate="true"
  4. 在 IIS 上,我启用了 Windows 身份验证和模拟。

但是当我尝试从 web 应用程序请求报告时,我仍然收到用户名和密码的提示,当我填写我的域和密码时,我仍然收到相同的错误 401:未授权。

我做错了吗? Kerberos 真的适合我的目标吗?

提前致谢。

编辑:对不起,如果我在错误的部分发帖。我不知道这个问题的正确部分在哪里。

【问题讨论】:

    标签: asp.net authentication iis reporting-services kerberos


    【解决方案1】:

    当您计划在 Internet 上部署报告服务时,它的打击者将使用自定义身份验证而不是 Windows 身份验证。创建自定义身份验证扩展需要自定义代码和 ASP.NET 安全方面的专业知识。

    如果您不想编写自定义身份验证扩展程序,可以使用 Microsoft Active Directory 组和帐户,但您应该大大缩小报表服务器部署的范围。以下指南描述了如何支持这种情况:

    • 创建具有只读权限的低权限域用户帐户。该帐户必须有权访问托管报表服务器的计算机。提供自定义 Web 表单,以便用户可以使用低权限域帐户登录。

    • 创建将用户帐户映射到报表服务器文件夹层次结构中特定项目的角色分配。您可以通过选择浏览器预定义角色作为角色分配来限制对只读操作的访问。

    • 将报告配置为使用存储的凭据来获取报告的数据。如果您想使用与允许访问报表服务器的帐户不同的帐户来查询外部数据源,则此方法很有用。

    您可以参考以下链接了解更多详情:

    https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2005/bb283249(v=sql.90)?redirectedfrom=MSDN#configuring-authentication-for-extranet-and-internet-access

    https://docs.microsoft.com/en-us/sql/reporting-services/security/authentication-with-the-report-server?view=sql-server-ver15

    https://forums.asp.net/t/2095478.aspx?401+Unauthorized+SSRS+authentication+from+NET+IIS

    https://forums.asp.net/t/1273411.aspx?Setting+up+Reporting+Services+with+IIS+Access+Denied+Error

    【讨论】:

    • 嗨。很抱歉回复晚了,非常感谢您的回答。我会看看这个,看看它是怎么回事。非常感谢!对此,我真的非常感激!一直在敲墙,想弄清楚。
    • 嗨,很抱歉回复晚了。可悲的是,还没有。我用谷歌搜索并找到了如何创建微软提供的自定义安全性。我的上级不想使用它。旧的匿名身份验证方法也不安全,所以没有理由不使用这种方法。这是网址,github.com/Microsoft/Reporting-Services/tree/master/…
    • @user5397881 您能分享一下您是如何阅读这份报告的吗?你是怎么设置用户的?
    • 嗨。感谢并为迟到的回复感到抱歉。撞墙后。我让自定义身份验证工作,就像在 github 上一样使用表单身份验证。虽然出现了新问题,但作为管理员,我无法添加新数据源,当我单击新数据源时,出现错误,“”发生错误。有些不对劲。请稍后再试”,我无法点击页面上的任何内容。”。如果有人知道答案,请帮忙。
    猜你喜欢
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多