我需要根據已經在Django中創建的用戶從另一個python軟件提供對Django數據庫的訪問。我對整個訪問的事情都很滿意,我只需要一段代碼來生成一個Django密碼,就像admin認證模塊一樣。生成Django SHA1密碼
這樣做的最佳方式是什麼?請注意,如果可能的話,我不希望爲此擁有整個Django包。
非常感謝
我需要根據已經在Django中創建的用戶從另一個python軟件提供對Django數據庫的訪問。我對整個訪問的事情都很滿意,我只需要一段代碼來生成一個Django密碼,就像admin認證模塊一樣。生成Django SHA1密碼
這樣做的最佳方式是什麼?請注意,如果可能的話,我不希望爲此擁有整個Django包。
非常感謝
知道它是如何工作的。我寫了一個小功能,以檢查用戶的口令:
def check_passwd (user, raw_password):
import hashlib
# ... get 'hsh_passwd' from database based on 'user' ...
hsh_passwd = hsh_passwd.split('$')
salt = hsh_passwd[1]
hsh = hsh_passwd[2]
if hsh == hashlib.sha1(salt + raw_password).hexdigest():
return True
return False
當然,有沒有大量的核查和它的不靈活,但它就是我一直在尋找。
用於創建和驗證用戶口令,整個代碼在django.contrib.auth.models
。
具體來看,方法User.set_password
和User.check_password
。您需要提取這兩位數據以及它們引用的Django代碼,以根據Django創建和驗證項目的用戶密碼。
謝謝。從你的答案中得到我需要的。 – vmassuchetto 2011-03-11 13:55:51
http://www.b-list.org/weblog/2007/sep/22/standalone-django-scripts/ – 2011-03-10 12:51:26