带有 MD5 的 Cakephp 3 Auth 组件密码字段
Cakephp 3 Auth Component password field with MD5
我正在使用 cakephp 3 及其 auth 组件..一切正常,但我想在使用 md5 登录时匹配我的密码,而不是 cakephp 3 使用的默认哈希密码逻辑...我应该怎么做才能实现此功能..下面是我的 AppController.php 文件我到目前为止所做的..
AppController.php
public function initialize()
{
parent::initialize();
$this->loadComponent('RequestHandler');
$this->loadComponent('Flash');
$this->loadComponent('Auth', [
'loginRedirect' => [
'controller' => 'Users',
'action' => 'dashboard'
],
'logoutRedirect' => [
'controller' => 'Users',
'action' => 'login'
],
'loginAction' => [
'controller' => 'Users',
'action' => 'login'
],
'authenticate' => [
'Form' => [
'userModel' => 'Users',
'fields' => [
'username' => 'user_email',
'password' => 'user_password'
]
]
],
'storage' => 'Session',
'unauthorizedRedirect' => false,
]);
}
正如我上面提到的,一切正常,我能够使用 cakephp 3 提供的默认哈希方法成功登录,但我只想排除这种哈希方法并需要使用 md5 进行检查 ..我该怎么做?
有人可以指导我或帮助我吗?
谢谢
好的..伙计们..最终我找到了解决方案,下面是我想出的..所以如果有人坚持或想要类似的功能,他们可以按照这个来完成这个..
转到此处 http://book.cakephp.org/3.0/en/controllers/components/authentication.html#creating-custom-password-hasher-classes 他们说要创建一个新文件,您需要遵循并创建该文件。
然后在您的 Auth 组件 中确保添加下面的行
'Form' => [
'passwordHasher' => [
'className' => 'Legacy',
]
]
这对我有用,我希望它能帮助别人..谢谢你们。
我正在使用 cakephp 3 及其 auth 组件..一切正常,但我想在使用 md5 登录时匹配我的密码,而不是 cakephp 3 使用的默认哈希密码逻辑...我应该怎么做才能实现此功能..下面是我的 AppController.php 文件我到目前为止所做的..
AppController.php
public function initialize()
{
parent::initialize();
$this->loadComponent('RequestHandler');
$this->loadComponent('Flash');
$this->loadComponent('Auth', [
'loginRedirect' => [
'controller' => 'Users',
'action' => 'dashboard'
],
'logoutRedirect' => [
'controller' => 'Users',
'action' => 'login'
],
'loginAction' => [
'controller' => 'Users',
'action' => 'login'
],
'authenticate' => [
'Form' => [
'userModel' => 'Users',
'fields' => [
'username' => 'user_email',
'password' => 'user_password'
]
]
],
'storage' => 'Session',
'unauthorizedRedirect' => false,
]);
}
正如我上面提到的,一切正常,我能够使用 cakephp 3 提供的默认哈希方法成功登录,但我只想排除这种哈希方法并需要使用 md5 进行检查 ..我该怎么做?
有人可以指导我或帮助我吗?
谢谢
好的..伙计们..最终我找到了解决方案,下面是我想出的..所以如果有人坚持或想要类似的功能,他们可以按照这个来完成这个..
转到此处 http://book.cakephp.org/3.0/en/controllers/components/authentication.html#creating-custom-password-hasher-classes 他们说要创建一个新文件,您需要遵循并创建该文件。
然后在您的 Auth 组件 中确保添加下面的行
'Form' => [
'passwordHasher' => [
'className' => 'Legacy',
]
]
这对我有用,我希望它能帮助别人..谢谢你们。