我的 Intranet 站点引用 SSRS Web 服务时遇到了经典的双跳问题。这是拓扑:
客户端 -> Web 服务器 -> SQL Server(DB 和 SSRS)
这是我到目前为止所做的:
- 为 HTTP/webserver 创建的 SPN - NetBios 和 FQDN(AppPool 的域用户)
- HTTP/sqlserver 的 SPN(运行 SQL 和 SSRS 的域用户)
- MSSQLSvc/sqlserver 的 SPN(运行 SSRS 的域用户)
- 允许在 AD 中委托 Web 服务器和应用程序池的身份
- 允许委托客户账户
- Web 服务器的 Web 应用程序正在模拟客户端用户并调用 SSRS Web 服务,传递 DefaultNetworkCredentials 并将 ImpersonationLevel 设置为委派
我在 SSRS 服务中收到了 401。如果我明确传递我的个人凭据,那么一切正常,所以我相信我的问题只是委托客户端凭据。
我觉得我已经阅读了 20 篇关于此的文章,并且尝试了所有方法,结果都一样。