2012-11-21 105 views
0

我需要幫助爲我的公司整合系統。我們創建了一個數據庫,將所有信息集中在一個認證服務器中。使用SpringSecurity Core進行身份驗證

對於身份驗證,我們使用內部URL是這樣的:

http://autentication/ServletAutentication?login=XXXXXXXXXX&password=YYYYYYYYY 

其中XXXXXXXX是MD5算法的YYYYYYYYY用戶名和加密的密碼。如何獲得返回XML:

<autentication> 
            <login> XXXXXXXX </ login> 
            <password> true </ password> 
</autentication> 

需要進行身份驗證。權限由SpringSecurity Core控制。

認證後,它會被存儲在最後訪問日期這一點。

有誰知道我可以在SpringSecurity核心插件實現這一點?

+2

Spring Security沒有以這種方式工作...它不應該,因爲通過密碼(或它的MD5哈希)在這樣的URL(特別是HTTP,而不是HTTPS)是不安全的。 – GreyBeardedGeek

+0

GreyBeardedGeek,謝謝你的回覆!即使URL不安全,環境也受到控制,並且不需要這種安全性。訪問此URL的返回是一個帶有webservice認證結果的XML。你看到有什麼辦法來實現這一點? – isilva

+0

無法理解:您是否正在嘗試爲現有的「身份驗證服務器」實施Grails客戶端或者自己創建此服務器? –

回答

0

既然你不認爲你需要實際上是安全的,你當然可以,實現自己的非安全保障方案 - 只需要創建一個控制器,它看起來的用戶名和密碼哈希了在數據庫中,然後返回xml,向響應添加會話cookie以跟蹤登錄狀態。

在另一方面,試圖破解春季安全到底該怎麼做這是不是意味着做可能是不值得的。

+0

GreyBeardedGeek您好,非常感謝您的回覆!我們真正想要的是做到這一點,創建一個操作在遠程服務器上執行此身份驗證服務。目標是保存用戶密碼以裝飾更多。因此,當在應用程序中創建並輸入用戶密碼時,這將調用帶有必要參數的url,以驗證驗證服務器是否返回了XML,並且答案正確,並通過身份驗證正常執行。(續...) – isilva

+0

問題是我不知道如何在Grail中調用URL,也不知道如何處理XML中收到的響應。我認爲它會很酷。你知道執行這些命令嗎?你認爲這個邏輯工作嗎? – isilva

+0

不,我認爲這是一個非常糟糕的主意和「重新發明輪子」。如果你聽起來像是在嘗試單點登錄。對於SSO有許多預先存在的解決方案,您應該只使用其中的一個。 – GreyBeardedGeek