2011-12-13 19 views
0

我有現有的單點登錄struts Web應用程序。然後我將使用Spring框架創建一個不同的Web應用程序。然後,想要使用從struts應用程序登錄的用戶鏈接到新的春季應用程序。如何鏈接我的新的彈簧框架Web應用程序與Struts框架Web應用程序啓用單點登錄(SSO)

問題:我不知道如何自動登錄從struts應用程序登錄到我的彈簧應用程序的用戶。

任何指導表示讚賞。

更新1:物理服務器位於同一地點,但它由兩個不同的公司擁有。但是,我們相互聯繫,我們稱之爲Extranet。它就像一個內聯網,但範圍更廣或網絡更廣。

更新2:我必須添加有關域設置。 http://www.abc.xxx1.ne.jp/是struts web應用程序。 http://server1.abc.apac.yyy1/springwebapp/是春季web應用程序。它將是跨域。我從@edwardw聽說我需要選擇federation的方法。任何有關如何處理上述方法的指導都將受到高度讚賞。

+0

看看答案中的鏈接。 http://stackoverflow.com/questions/6340466/single-signon-spring/6340625#6340625 – Simeon

回答

1

這取決於你的兩個Web應用程序是否駐留在同一個域中。

  • 如果是,那麼您可以使用基於cookie的解決方案。您當前的SSO服務器必須支持這種開箱即用的功能。檢查它的文檔。

  • 如果不是,那麼它要複雜得多。檢查您的SSO服務器的文檔以獲取聯合身份驗證和/或聯合身份驗證。

而且你也可能會發現這個SO question有幫助。

+0

你是什麼意思由同一個域?我添加了紅外線信息。你會檢查出來嗎? – eros

+1

如果兩個web應用程序是「mail.abc.com」和「cal.abc.com」,則是同一個域。如果是'''abc.com'''和'''xyz.com''',則跨域。服務器的物理位置並不重要。 Cookie很簡單,不能跨域使用。如果跨域,則需要調查SSO服務器的身份聯合功能(例如,SAML或OpenID)。 – edwardw

+0

明白了。我很感激。我會盡快確認。 – eros