2010-06-15 51 views
2

我創建了一個需要驗證的GWT項目。最初,用戶的密碼是純文本的,但現在我想用BCrypt對它們進行散列。我搜索,但我找不到描述如何使Jetty驗證對BCrypt哈希密碼的地方。當使用bcrypt對密碼進行散列處理時驗證webapps

我使用純文本格式和SSL通過FORM發送密碼到服務器。我需要做什麼才能讓Jetty把這個密碼加密並將其與數據庫中的密碼進行比較?

謝謝;

+0

如果我理解正確,你想(或者說已經有)Jetty來處理會話/用戶管理 - 你可能想看看在你的應用程序中編寫身份驗證部分 - 看到這個問題:http:// stackoverflow。 COM /問題/ 2974100 /問題上,GWT餅乾和 - 網頁導向。它應該給你最大的靈活性(整合BCrypt沒有問題)和安全性(通過容器的會話管理通常容易受到XSRF攻擊)。總的來說,它是灰心的 - 在GWT的Google Group上搜索''會話管理'',但當然是YMMV :) – 2010-06-15 18:26:27

回答

0

在JAAS中,這是通過LoginModule完成的。 Jetty-specific JAAS教程(我剛剛瀏覽過)解釋瞭如何實現自己的配置,並配置Jetty以使用它。

正如伊戈爾已經注意到並在他所鏈接的文章中解釋的那樣,容器會話管理本身並不足以抵禦XSRF。您仍然可以使用JAAS - 但請確保您的服務器通話是另外受存儲在Cookie中的令牌而不是保護。

我會親自使用與cookie中使用的令牌不同的令牌。這有助於保護一點XSS(否則,你會擊敗httpOnly cookies的目的)。

+0

這是一篇在本文末尾提出的問題,但你說jaas不足以保護網站。它仍然是這樣嗎?這是一個jsf項目。 – Ced 2015-06-25 20:50:40

+0

另外您鏈接的教程已關閉。我正計劃爲jaas實現bcypt,並且很難找到如何解決這個問題。 – Ced 2015-06-25 20:51:50