如何在CakePHP中重置管理员密码?

时间:2014-05-09 14:00:32

标签: cakephp-2.3

我忘记了cakephp应用程序中的管理员密码。我尝试更新MySql PhpMyAdmin下的users表中的密码列。但它不起作用。我正在使用CakePHP版本2.3.7。

2 个答案:

答案 0 :(得分:2)

CakePHP本身没有“管理员密码”。 如果您使用Auth组件和开箱即用的密码哈希,请在AppController beforeRender()方法中添加:

debug(Security::hash('the-desired-password'));

并访问您的家(公开发布)页面。

显示的字符串是要在admin用户的用户表中输入的值。

请记住,一旦它再次起作用,请删除上面的行。

答案 1 :(得分:2)

首先,你必须检查你正在使用的加密方法,Cakephp默认使用SHA1

检查在没有登录的情况下可以访问的任何操作上写下面的代码

App::uses('SimplePasswordHasher', 'Controller/Component/Auth');
$passwordHasher = new SimplePasswordHasher(array('hashType' => 'sha1'));
echo $passwordHasher->hash("mynewpassword")

复制上述密码并将其更新到您的数据库