Доброе утро,Проблема с DefaultPasswordHasher CakePHP
У меня проблема с входом в мое веб-приложение.
Когда я зарегистрировавшись на мое приложение нет ошибок (на мой взгляд):
//Register
public function register() {
$user = $this->Users->newEntity();
if($this->request->is('post')) {
$this->request->data('status', '0');
$this->request->data('role', '0');
$user = $this->Users->patchEntity($user, $this->request->data);
if($this->Users->save($user)) {
$this->Flash->success('You are registered and can login');
return $this->redirect(['action' => 'login']);
} else {
$this->Flash->error('You are not registered');
}
}
$this->set(compact('user'));
$this->set('_serialize', ['user']);
}
Когда пользователь зарегистрирован я наклоняю входа в систему (И я не знаю, почему), но если я войти в систему на другого пользователя, и я меняю пароль для старого пользователя -> старый пользователь может войти в систему.
Я не знаю, где причина.
Логин:
//Login
public function login() {
if($this->request->is('post')) {
$user = $this->Auth->identify();
//dump($user);
//die();
if($user) {
if($user['status'] == '1') {
$this->Auth->setUser($user);
return $this->redirect(['controller' => 'tasks']);
}elseif($user['status'] == '0') {
$this->Flash->error('You are not authorized to Log In. Please contact with Admin of Application');
}
} else {
//Bad Login
$this->Flash->error('Incorrect Login or Password');
}
}
}
Самое интересное, что когда я входе и я написал
dump($user);
die();
Я получаю "ложь" ...
Login.ctp :
<div class="index large-4 medium-4 large-offset-4 medium-offset-4 columns">
<div class="panel">
<center><?= $this->HTML->image('small_logo.png'); ?></center>
<?= $this->Form->create(); ?>
<?= $this->Form->input('email'); ?>
<?= $this->Form->input('password'); ?>
<center><?= $this->Form->submit('Log In', array('class' => 'button')); ?></center>
<?= $this->Form->end(); ?>
</div>
Я думаю, что проблема связана с «DefaultHasherPassword», но я не знаю, где проблема, и как ее решить. Пожалуйста помоги.
Его как новый пользователь косяк логин, но когда пользователь модифицируется (пароль изменен) - он может войти
Если вы делите свой код аутентификации appController, тогда вам будет легче помочь – tarikul05