Windows-Server-2003

我可以在兩個服務帳戶之間共享一個 SPN 嗎?

  • November 19, 2009

我在同一台伺服器上執行 IIS 和 SQL 報告伺服器。IIS 執行為d\acct1SSRS 執行為d\acct2.

最初,我HTTP/server.d.com為兩者註冊了一個 SPN,d\acct1d\acct2為 Active Directory 中的無約束 kerberos 委派配置了兩者。

此配置破壞了 kerberos,因為HTTP/server.d.com.

如果我刪除 SSRS 的 SPN,IIS 就可以工作。如果我刪除 IIS 的 SPN,SSRS 就可以工作。

有沒有辦法在同一伺服器上執行的兩個不同服務帳戶之間共享 SPN,這樣它們就不會創建重複的 SPN?

或者,我必須在活動目錄中創建兩個 A 記錄iis.server.d.comreports.server.d.com使用主機頭將兩個別名直接保存在每個相應的服務中嗎?

對 Kerberos 委派如何工作的研究表明,不,您不能在同一機器上的服務帳戶之間共享 SPN。

我通過為我的伺服器配置第二個 IP 地址並將 IIS 映射到一個 IP 地址並將 SSRS 映射到另一個 IP 地址來解決了這個問題。

然後,我在 DNS 中創建了兩個新的 A 記錄(不要使用 C 記錄,它們對 Kerberos 委託不可靠)來指向服務。iis.server.d.com指向 IIS IP 地址並ssrs.server.d.com指向 SSRS IP。

最後,我刪除了 和 的所有 SPN,d\acct1並將d\acct2SPN 重新分配為HTTP/iis.server.d.comHTTP/ssrs.server.d.com

此外,我發現使用ADSIEdit 編輯 SPN 比使用命令行容易得多*。*setspn

引用自:https://serverfault.com/questions/85982