[英]Validate passwords with CakePHP 1.3
我如何在CakePHP的密碼字段上運行驗證檢查,看到在我有機會對其進行任何檢查之前密碼已經被哈希化了?
如果您的表單中只有一個password
字段,則需要創建一個自定義哈希函數 ,該哈希函數要么什么都不做,要么更好地將原始密碼保留在某個地方。
盡管您的表單中有兩個密碼字段,但最有可能的情況是要求用戶確認密碼。 在這種情況下,您將在第二個密碼字段上執行密碼驗證規則。 這可以在自定義驗證規則中自動發生,請記住,您可以通過$this->data
訪問驗證功能內的所有其他字段。 然后,您可以確認兩個密碼相同,如此處所述 。
它對我來說是這樣(在模型中):
public $validate = array(
'password' => array(
'minLength' => array(
'rule' => array('minLength', '8')
)
)
);
如果要執行更多驗證,請在適當的模型中創建自定義驗證方法 。 在自定義驗證方法中,通過以下方式哈希密碼: Security::hash($this->data['User']['password'], null, true)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.