2016-09-07 71 views
0

我在一段時間裏徘徊文檔和幾頁,但我無法找到答案。問題很簡單:SimpleSAMLphp SP是否需要與IdP通信?

我可以在本地網絡中託管IdP(IdP不可從外部使用),而SP通過互聯網可用嗎?

  • 如果我在本地設置IdP和SP,一切都很好。
  • 如果我在公共服務器上設置IdP/SP,一切都很好。
  • 如果我在本地設置了Idp,並且在公共服務器上的SP結果爲NOSTATE錯誤。

我知道想要使用只在特定網絡上可用的IdP的SP沒有太大意義。問題是我必須處理這種情況。 ;)

當我通過apache訪問日誌分析工作流時,我沒有看到SP和IdP之間的直接通信。似乎一切都是由用戶瀏覽器自己處理的。爲此我想這應該是可能的?

如果它應該是可能的,我只需要修復我的NOSTATE錯誤。如果這是不可能的,NOSTATE錯誤只是誤導,我不能解決這個問題。

任何想法或經驗?

回答

1

SAML支持前端通道綁定(您正在查找的內容)以及SP需要直接與IdP通信的後端通道綁定。我見過的絕大部分部署都使用前臺頻道,所有事情都是通過用戶的瀏覽器完成的。

至於你的情況,是的,這是可能的。我們經常在測試中使用它。我見過企業只有在其本地網絡中才有他們的IdP,但員工仍然可以訪問外部的SaaS服務 - 所以您的情況確實合理並且很常見。

至於您的問題(根據docs),NOSTATE通常是由域名更改,https重定向http以及存儲會話的任何問題引起的 - 例如,在負載均衡設置中,您遇到不同服務器分享會議。

我會開始在Firefox中安裝SAML Tracer,然後查看IdP上發生了什麼重定向,並查看主機名,端口等是否更改。

+0

很高興聽到我的用具不是那種奇特的。 :D我將檢查SAML Tracer以調試請求。我想你是對的,我搞砸了某個地方的主機名或類似的東西。謝謝。 – Marco