我的web應用程序依賴於容器管理的安全性,我想知道是否可以使用鹹味密碼。據我所知,僅通過配置JDBC或DataSource Realm就足夠簡單,可以將消解的密碼存儲在數據庫中,但無法向這些摘要添加鹽。你將如何在Tomcat中實現鹹味密碼5.5
有什麼建議嗎?
編輯:好像我只需要問前想一些問題;-)
這只是選擇的問題誰在做摘要計算(客戶端或服務器),並相應配置Tomcat。
我的web應用程序依賴於容器管理的安全性,我想知道是否可以使用鹹味密碼。據我所知,僅通過配置JDBC或DataSource Realm就足夠簡單,可以將消解的密碼存儲在數據庫中,但無法向這些摘要添加鹽。你將如何在Tomcat中實現鹹味密碼5.5
有什麼建議嗎?
編輯:好像我只需要問前想一些問題;-)
這只是選擇的問題誰在做摘要計算(客戶端或服務器),並相應配置Tomcat。
如果您正在創建和存儲摘要,您可以同時創建和存儲鹽。
你的權威性表將包含 .... pwdDigest VARCHAR(64), - 或者int256如果你有一個 hashSalt的Int64, ....取決於身份驗證協議你」
然後當你得到客戶端加密的用戶名時使用你發送hashSalt到客戶端,或者如果你明確地收到它,用它來散列密碼。
我對您所談論的數據庫訪問技術並不熟悉,所以我很抱歉如果我錯過了這個觀點並且過分簡化了答案。
JCE中基於Passord的加密按照PKCS#5使用salt。一個例子見http://java.sun.com/j2se/1.4.2/docs/guide/security/jce/JCERefGuide.html#PBEEx。
Tomcat 5.5和6.0不支持JDBCRealms和DataSourceRealms中的salted密碼。這是一個已知的錯誤,並且建議的補丁似乎工作正常,但尚未被接受。
如果您不希望應用,你至少可以使用它作爲實現的例子補丁:這只是Tomcat的行話在數據庫中查找密碼
Bug 45871 - Support for salted and digested patches in DataSourceRealm
+1用於查找我的補丁併發布鏈接。 :) – 2009-01-19 21:50:53
。 – agnul 2008-10-17 20:22:28