2013-09-30 22 views
0

我們正在自動設置Sonar「用戶」表。對於每個用戶,我們有它的密碼,我們可以生成一個隨機鹽,然後我們只需要生成一個「crypted_pa​​ssword」字段。我的問題是這個字段是如何生成的?我嘗試了SHA-1並將密碼和鹽組合在一起 - 到目前爲止無法提供相同的加密密碼。自動創建聲納「用戶」數據庫表 - 如何計算「crypted_pa​​ssword」字段?

謝謝!

+0

我可以建議您使用'/ api/users/create' Webservice而不是直接插入數據庫嗎?從長遠來看,這可能更易於維護。 – Mithfindel

+0

它可能更復雜,但讓我檢查它 –

+0

Yeap,我看到它只是一個捲曲:http://docs.codehaus.org/pages/viewpage.action?pageId=231080601#WebServiceapiusers-CreateaUser。不錯,但不會在我們的情況下工作,因爲每個用戶都會生成自己的散列,後來用於填充數據庫,因此自動化不知道真正的密碼 - 它只能看到用戶密碼散列。 –

回答

0

好吧,鑑於鹽和這裏的密碼,它是如何工作:

MessageDigest sha1 = DigestUtils.getSha1Digest(); 
sha1.update(("--" + salt + "--" + password + "--").getBytes()); 
return Hex.encodeHexString(sha1.digest()); 

假設爲REST_AUTH_SITE_KEY(空字符串)和REST_AUTH_DIGEST_STRETCHES(1)默認值:12

相關問題