2014-09-11 61 views
0

對不起,如果這有點長。需要將我們的應用程序與客戶的主要門戶網站集成。門戶網站使用SAML 2.0 SSO功能進行維護,因此,我們還需要使用SAML 2.0集成我們的登錄。SSO在2臺不同的服務器上維護會話

通過iframe完成集成,即在主門戶網站上,一個iframe指向我們的應用程序。當用戶登錄並單擊菜單鏈接時,他/她將會看到iframe頁面,我們的會話將與他們的IDP一起檢查以確保他們是有效的用戶。如果是這樣,那麼我們的應用程序將繼續按照慣例加載。

問題是我們需要在我們的服務器上維護會話,而他們應該在他們的應用服務器上維護會話。如果用戶在我們的網站上停留了一段時間,則客戶端主門戶上的會話將超時。當用戶點擊主門戶鏈接時,他們將被要求重新登錄。

建議當用戶嘗試導航到主要門戶頁面時,它會在我們的端點上調用服務(現在假設它是IDP)以檢查用戶會話是否有效。如果是,那麼我們需要返回SAML響應來驗證用戶。

我們正在探索在我們的最後建立一個IDP服務來促進這一點,但它似乎對我來說過分了。有沒有辦法讓IDP只提供用戶會話的檢查?還是有更好的選擇來實現這一目標?

事情,不能改變:

1. SSO language: SAML 2.0 
2. Server: Weblogic 10+ 
3. HTTPS a must. 

欣賞任何建議或反饋。

謝謝。

+0

將您的應用程序加載到iFrame中意味着該門戶仍處於活動狀態。會話不應該是一個問題,只要你沒有會話cookie衝突......我建議你讓你的應用程序與SAML一起工作,與他們的IdP建立連接,讓它工作,然後讓他們將您的應用程序嵌入到iFrame中。我敢打賭,它「只是起作用」。 – 2014-09-11 19:11:34

回答

1

根據提供的信息,我假設您的應用程序運行在WebLogic 10+上。如果遠程服務器也使用WebLogic,則可能只能在WebLogic聯合之間實施SAML身份驗證。
這將簡化一切,您不需要執行復雜的應用程序自定義。

如果遠程站點確實實施了SAML而不是WebLogic,那麼您仍應該能夠通過WebLogic配置實施SAML身份驗證。這很簡單,可以毫不費力地完成。

但請注意,WebLogic 10+不支持SAML SSO註銷。因此,這需要分開處理。