2011-09-19 158 views
2

我正在研究將在兩個域名下運行的grails應用程序,兩個獨立的Web服務器使用相同的數據庫服務器,因此所有數據都是共享的,並且兩個域都是相同的。該應用程序在兩個域中都是相同的,只有Config.groovy和css文件中的serverURL設置不同。我使用spring-security插件進行身份驗證。使用grails和spring安全進行跨域身份驗證

簡而言之,我需要的是,當用戶登錄以查看domain1.com/account時,用戶應該能夠訪問domain2.com/account並仍然可以登錄以查看相同的信息。

所有登錄都不是通過twitter/facebook登錄或OpenID功能,而是使用spring-security在我的應用程序中創建帳戶。

我不認爲它有可能使這項工作與餅乾,因爲他們是特定領域的,並且沒有辦法通過網絡應用程序訪問跨域cookie,糾正我,如果我錯了。

我正在考慮的解決方案之一是確保在使用tomcat集羣的兩個Web服務器之間存在會話複製,並強制在域交換機上重寫URL,以便會話由其他服務器定位。但是,這種解決方案是我的最後一個選擇,因爲如果訪問者在domain1.com上進行身份驗證後決定鍵入domain2.com,而不是單擊URL重寫的鏈接,會話信息將會丟失。

任何想法,建議?謝謝

回答

1

一種選擇是使用某種單點登錄技術,如CAS。甚至還有CAS here的grails/spring安全插件。

+0

謝謝,那不是我想要的。 – Micor

相關問題