设置 SPN 以从 IIS7 以原始用户身份访问 SQL Server 2008
我对 SPN 和我需要做的事情感到完全困惑。基本上,我有一个在 EUR 域上运行的网络服务器,我想在用户查看网页时使用 Windows 身份验证和模拟来访问不同的 MSSQL 服务器。
我已将 Web 服务器设置为使用 Windows 身份验证和模拟,并且它与 Web 服务器上的本地 MSSQL 实例配合良好,但不适用于 EUR 域上的任何其他实例。我收到一条错误消息:NT AUTHORITY\ANONYMOUS 用户登录失败。
IIS 和 MSSQL 服务当前在所有服务器上的系统帐户下运行,但我确实有一个功能 ID“EUR\ldntech1”如果需要的话我可以使用。
我知道这是双跳问题,我需要使用 SPN,在今天之前我从未听说过,并且我对如何添加它们的语法感到非常困惑,以及我是否只需要一个用于 Web 服务,或者如果我需要为我希望连接的每个 MSSQL 服务器添加一个。
我的网站托管在别名 fiportal.domain.net 上,实际托管在 服务器名称是 ldn55spr.domain.net
任何帮助将非常感激。
谢谢
I'm totally confused by SPN's and exactly what I need to do. Basically I have a webserver running on a domain EUR and I want to access different MSSQL servers using windows authentication and impersonation as the user viewing the webpage.
I have setup the webserver to use windows authentication and impersonation and it works fine with the local MSSQL instance on the webserver but not on any others on the EUR domain. I get an error saying: Logon failed for NT AUTHORITY\ANONYMOUS user.
IIS and MSSQL services are currently running under the system account on all of the servers but I do have a functional ID "EUR\ldntech1" that I can use if necessary.
I understand that this is the double hop issue and I need to use SPN's which before today I'd never heard of and I am very confused by the syntax of how to add them and if I need one only for the webservice or if I need to add one for every MSSQL server I wish to connect to.
My website is hosted on the alias fiportal.domain.net and actual
server name is ldn55spr.domain.net
Any help would be really greatly appreciated.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您正在尝试做的事情称为“约束委派”。这应该对您的谷歌搜索有所帮助。
您需要了解所有这些凭证委派的基础技术是 Kerberos。服务主体名称 (SPN) 是 Kerberos 的一部分。
这篇博文应该可以帮助您设置环境。
此工具将帮助您确保您的环境已针对约束委派正确配置。
编辑:虽然有些过时,这个 应该给你一些背景知识 - 尽管你确实说过你理解双跳问题
What you are trying to do is called Constrained Delegation. That should help you in your google searches.
You need to understand that the technology that's underlying all of this credential delegation is Kerberos. Service Principal Names (SPN) are a Kerberos thing.
This blog post should help you setup your environment.
This tool will help you ensure that your environment is correctly configured for Constrained Delegation.
edit: although somewhat dated, this should give you some background - though you did say that you understand the double-hop problem