一、django密碼儲存和加密方式
#演算法+迭代+鹽+加密
$$>$
預設加密方式配置
#settings裡的預設配置
password_hashers = [
'django.contrib.auth.hashers.pbkdf2passwordhasher',
'django.contrib.auth.hashers.pbkdwww.cppcns.comf2sha1passwordhasher',
'django.contrib.auth.hashers.argon2passwordhasher',
'django.contrib.auth.hashers.bcryptsha256passwordhasher',
'django.contrib.auth.hashers.bcryptpasswordhasher',
]#password_hashers[0]為正在使用的加密儲存方式,其他為檢驗密碼時,可以使用的方式
預設加密方式配置
所有支援的hasher
['django.contrib.auth.hashers.pbkdf2passwordhasher',
'django.contrib.auth.hashers.pbkdf2sha1passwordhasher',
'django.contrib.auth.hashers.argon2passwordhasher',
'django.contrib.auth.hashers.bcryptsha256passwordhasher',
'django.contrib.auth.hashers.bcryptpasswordhasher',
'django.contrib.auth.hashers.sha1passwordhasher',
'django.contrib.auth.hashers.md5passwordhasher',
'django.contrib.auth.hashers.unsaltedsha1passwordhasher',
'django.contrib.auth.hashers.unsaltedmd5passwordhasher',
'django.contrib.auth.hashers.cryptpasswordhasher',
]所有支援的hasher
二、手動校驗密碼
#和資料庫的密碼進行校驗
check_password(password, encoded)
#手動生成加密的密碼,如果password=none,則生成的密碼永遠無法被check_password()
make_password(password, salt=none, hasher='default')
#檢查密碼是否可被check_password()
is_password_usable(encoded_password)
三、密碼格式驗證
auth_password_validators = [
#檢驗和使用者資訊的相似度
,#校驗密碼最小長度
},#校驗是否為過於簡單(容易猜)密碼
,#校驗是否為純數字
,]四、自定義
官方原文
本文標題: django密碼系統實現過程詳解
本文位址: /jiaoben/python/266175.html
django的ORM操作 刪除和編輯實現詳解
向server端傳送資料 有2中方法,1 是 通過url 位址,2 是通過路徑 向server端傳引數方式 1,通過資料 2,通過路徑 url r blog d 刪除功能 在url檔案中,建立乙個delbook路徑,通過url的位址拿到id實現刪除 urlpatterns url r admin a...
django使用者認證系統 修改密碼6
再此之前我們已經完成了使用者登入 註冊 登出等功能,接下來讓我們繼續為使用者提供修改密碼的功能。該功能 django 的 auth 應用也已經為我們提供,過程幾乎和之前的登入功能完全一樣。修改密碼的的檢視函式預設渲染的模板名為 password change form.html,因此首先在 regi...
django的csrf實現過程詳解
如果是ajax提交,可以按照下面的方式處理 可以設定乙個全域性的設定,然後在 function 中執行函式 function 如果是form表單提交,則可以按照下面的方式處理 然後返回使用render的方式返回 中介軟體裡csrf預設是全域性都生效的,但是如果我們有需求,比如全域性生效,但是我某個函...