【发布时间】:2021-09-07 11:37:09
【问题描述】:
我正在将 CakePHP 用于一个学校项目,其中给你一个填充的数据库。
用户必须使用我已经设置的用户名/密码登录。然而问题是,数据库中的用户有一个未加密的密码,我想用它来验证他们。
我找不到任何方法来禁用密码哈希检查。我尝试像这样指定后备密码哈希。
$authenticationService->loadIdentifier('Authentication.Password', [
'fields' => [
'username' => 'username',
'password' => 'password',
],
'passwordHasher' => [
'className' => 'Authentication.Fallback',
'hashers' => [
'Authentication.Default',
[
'className' => 'Authentication.Legacy',
'hashType' => 'md5',
'salt' => false
],
]
]
]);
但我找不到任何方法来禁用“hashType”。
【问题讨论】:
-
谁给了你那个明文密码预填充数据库,把他们带到一个黑暗的角落,用一条湿鱼打他们的脸,直到他们求饶......一旦你完成了,更新数据库并对密码进行哈希处理。
-
@ndm 你是对的。我将数据库更新为一个简单的 sha1,并让 CakePHP 在登录时重新设置密码。我希望他们不介意我更改了数据库中的内容,否则我要去当地的超市找些鱼:)
标签: authentication cakephp cakephp-4.x