在cakephp4中禁用密码./ Authenticator 2.x



我使用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'。

我最终没有禁用密码散列,而是使用了一个备用方法,就像我的问题一样。

我使用SQL查询用sha1散列了数据库中的所有密码。(sha1是不安全的,但在我的情况下不是必需的)。

当用户登录时,CakePHP检查密码是否必须升级为更安全的散列,并在需要时进行升级。(更多关于CakePHP哈希/升级的信息可以在这里找到:https://book.cakephp.org/authentication/2/en/password-hashers.html)

最新更新