2011-12-02 229 views
2

在過去的幾天裏,我一直在不知疲倦地使用ADFS 2.0爲WIF設置開發測試環境。我遇到的問題之一是我的家庭環境只有一個IP地址,並且我不打算在主服務器上粘貼ADFS。因此,我爲FS(idp.yyy.local)創建了一個專用虛擬機。ADFS 2.0 - 代理/服務器503服務不可用

爲了不直接連接到我的網站,'yyy'是指'dgdev'。 (下圖)

奇怪的是,它的部分工作。這是一張詳述我的基礎設施的圖片。

enter image description here

有什麼奇怪的是,我可以在正常的HTTP瀏覽「idp.yyy.net」和HTTPS就好了。我也可以完美地查看WS聯合元數據。現在,我對ADFS很陌生,但我期望在到http://idp.yyy.net/adfs/services/trust時,它會將我重定向到Windows SSL登錄。相反,所有我收到的是:

服務不可用


HTTP錯誤503服務不可用。

我在FS代理和FS上使用相同的SSL證書。它的主題是我的主域名yyy.net。它有幾個主題備選名稱,以便我可以使用單個IP:端口使用SSL託管多個IIS網站。

CN = yyy.net 
DNS Name=www.yyy.net 
DNS Name=idp.yyy.net 
DNS Name=idp.yyy.local 
... 
IP Address=192.168.1.2 
IP Address=192.168.1.3 
IP Address=192.168.1.4 
... 

有沒有人有任何想法,爲什麼我看到503服務不可用的錯誤。事件查看器中沒有任何內容顯示爲錯誤。 (除了與AppFabric惱人的事情,但這是我還沒有碰的另一個問題

在此先感謝!其實很多很多,謝謝。我已經用盡了所有可以想出的途徑和想法,爲什麼這可能會「破裂」?


如果任何人有一個想法,我怎麼能調試這個問題,我想肯定只是作爲一種解決方案。我試過IIS失敗的請求記錄,但沒有任何東西正在生成。主辦ADFS服務的地點/內容? 我已經看過的東西:

  • 所有AppPools都在運行。
  • 舊的ADFS 1.0 Web服務(asmx)可以很好地訪問。
  • 我可以直接訪問端點發行人......或者至少是「windowstransport」
+0

我應該注意的是,一些發行人端點工作,如果我直接去它像:https://idp.yyy.net/adfs/services/trust/2005/windowstransport。 此外,代理服務器正在返回一個403 Forbidden,但在我的本地局域網上,實際的Federation Server確實返回503服務不可用。不知道爲什麼這種不匹配存在。 – Daniel

回答

3

那麼原來一切都已經一直在努力!

我花了幾個小時確保證書正確創建。然後,在仍然看到503錯誤之後,我意識到我的默認網站的代理服務器AppPool正在「ApplicationPoolIdentity」下運行 - 這真的是用戶: IIS AppPool \ DefaultAppPool。

我從未授予該用戶讀取ADFS證書私鑰的權限。因此,我看到了403禁止而不是503。將AppPool切換到網絡服務... voila !, 503服務不可用。

所以現在我確信我的代理服務器和ADFS服務器在談論就好了。現在爲什麼我仍然看到503服務不可用?!?

我告訴自己,反正來創建一個測試應用程序。在Visual Studio中,我設置了一個新的MVC 3 Web App。添加了我現有的STS參考。設置一個虛擬聲明並更新應用程序的FederationMetadata。將新的依賴方添加到ADFS。

將我的瀏覽器打開到Web應用程序並立即成功!

> GET) https://mywebapp/ 
> Response-Redirect) Location header kicks me to my IdP (ADFS) 
    https://idp.yyy.net/adfs/ls/?wa=wsignin1.0&wtrealm......... 
> I sign-in with proper credentials 
> POST) https://mywebapp/login << AWESOME! 
相關問題