Bonjour à tous,
Je suis en train de mettre en place un systeme d'authentification avec CakePHP et depuis 2j je me tire les cheveux.
J'ai un username qui correspond a l'email de l'utilisateur et un password chiffré dans le model User :
public function beforeSave($options = array()) {
if (!empty($this->data[$this->alias]['password'])) {
$passwordHasher = new SimplePasswordHasher();
$this->data[$this->alias]['password'] = $passwordHasher->hash($this->data[$this->alias]['password']);
}
return true;
}
Et dans mon appController j'ai :
public $components = array(
'Session',
'Auth' => array(
'loginAction' => array(
'controller' => 'profils',
'action' => 'signin',
'manager' => true
),
'authError' => 'Pensiez-vous réellement que vous étiez autorisés à voir cela ?',
'authenticate' => array(
'Form' => array(
'passwordHasher' => 'Simple',
'fields' => array(
'email' => 'username', // 'username' par défaut
'password' => 'password' // 'password' par défaut
)
)
),
'loginRedirect' => array('controller' => 'defaults', 'action' => 'index', 'manager' => true),
'logoutRedirect' => array('controller' => 'profils', 'action' => 'signin', 'manager' => true),
'authorize' => array('Controller') // Ajout de cette ligne
)
);
Avec un simple $this->Auth->login() je devrais me connecter... eh ben non XD
Pourtant mon formulaire n'envois que le champ email et password...
Je suis en 2.4.6 (oui je sais j'aime bien cette version). Au secours...
Merci beaucoup d'avance
Wheezy