Kerberos

為什麼我們的 ADFS 代理伺服器的 Kerberos 安全性失敗?

  • July 28, 2014

我們有一個 WCF 服務,它使用活動聯合通過 AD FS 2.0 對呼叫者進行身份驗證,並且它在內部執行良好。現在我們想將它暴露給外界,所以我們的伺服器團隊在 DMZ 中為該服務設置了一個伺服器和一個 AD FS 代理伺服器。

當呼叫 WCF 服務時,我們得到以下異常:

System.ServiceModel.Security.SecurityNegotiationException:針對目標“https://adfs-dev.example.com/adfs/services/trust/2005/kerberosmixed”的SOAP安全協商https://adfs-dev.example.com/ adfs/services/trust/2005/kerberosmixed ‘失敗。有關更多詳細資訊,請參閱內部異常。`

—> System.IdentityModel.Tokens.SecurityTokenValidationException:提供的 NetworkCredentials 無法創建 Kerberos 憑據,有關詳細資訊,請參閱內部異常。

—> System.IdentityModel.Tokens.SecurityTokenException:InitializeSecurityContent 失敗。確保服務主體名稱正確。

–> System.ComponentModel.Win32Exception:指定的目標未知或無法訪問。

  • 內部 AD FS 伺服器是配置為場與獨立的單個伺服器,AD FS 服務在服務帳戶下執行。
  • 代理 AD FS 伺服器是配置為獨立的單個伺服器,AD FS 服務作為網路服務執行。
  • DMZ 中應用伺服器上的主機文件條目將 AD FS 服務名稱指向代理伺服器的 IP。
  • 防火牆允許埠 443 上的 SSL 流量從代理到內部 AD FS 伺服器。
  • 為服務帳戶註冊了 HOST/adfs-dev.example.com SPN。

我可能會錯過什麼?

https://adfs-dev.example.com/adfs/services/trust/2005/kerberosmixed ’ 不能用作代理上的端點。請選擇一個可用的端點。

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