0

我很混乱。

考虑以下:

  • 具有称为 DOM 的域的 Active Directory 环境
  • 具有 NetBIOS 名称 VS1 的 IIS 7 框
  • 为 VS1 提供别名的 DNS 记录为 pineapple.london.uk.corp
  • 作为 DOM\PineappleService 运行的应用程序池
  • 启用 Windows 身份验证。
  • 客户端使用 HttpWebRequest 调用盒子上的 XML/JSON ASP.NET 服务。

该服务调用网络上的工作站来收集信息。这适用于我使用以我身份运行的 IIS Express 的开发,因为 IISX 只是一个 .exe

在生产中,服务工作正常,身份验证工作,但调用导致服务(作为 PineappleService 运行)访问网络上的内容的函数失败。

我怀疑存在 SPN 注册问题,但我不知道要设置哪些 SPN。

最近,我偶然发现了这篇文章,这似乎与其他一些文章大相径庭:

http://blogs.msdn.com/b/webtopics/archive/2009/01/19/service-principal-name-spn-checklist-for-kerberos-authentication-with-iis-7-0.aspx

请注意,它说

SPN 要求与上述相同。您不必为 Domain1\Username1 添加像 http/ 这样的 SPN,这与 IIS 6.0 不同(我们必须为应用程序池标识添加一个 http/ 形式的 SPN)。

所以我不知道什么是对的了。我不知道是否需要注册 HTTP SPN 或 HOST SPN 或使用 DNS 别名或 NetBIOS 名称,并在 PineappleService 帐户或 VS1 计算机帐户上设置它们。

我不知道当我尝试时是否存在缓慢的 AD 复制问题,这意味着我必须在反复试验之间等待一个小时。

现在一切都那么复杂。我作为系统操作员和开发人员工作了 15 年,我感觉到域和工作站以及权利和政策的终结。这一切都变得太多了。

谢谢你的帮助。

卢克

这是与 ServerFault 的交叉帖子,没有得到任何答案:

https://serverfault.com/questions/417483/serviceprinciplename-setup-for-web-service-on-iis-

4

0 回答 0