Принимаем запрос по /login?u=username&p=password
Затем загружаем юзера по логину и сравниваем запрошенный и установленный пароли с помощью хешера. Если все совпало, то логиним юзера и возвращаем все его параметры.
public function login() {
$data = $this->request->query;
$this->loadModel('User');
$user = $this->User->find('first', array('conditions' => array('login' => $data['u'])));
$passwordHasher = new BlowfishPasswordHasher();
$confirm = $passwordHasher->check($data['p'], $user['User']['password']);
if ($confirm) { // пароль поравильный
$this->Auth->login($user['User']);
$data = $this->Session->read('Auth');
} else {
$data = array('Error' => 'Bad password');
}
$this->set(compact('data'));
}
Затем загружаем юзера по логину и сравниваем запрошенный и установленный пароли с помощью хешера. Если все совпало, то логиним юзера и возвращаем все его параметры.
public function login() {
$data = $this->request->query;
$this->loadModel('User');
$user = $this->User->find('first', array('conditions' => array('login' => $data['u'])));
$passwordHasher = new BlowfishPasswordHasher();
$confirm = $passwordHasher->check($data['p'], $user['User']['password']);
if ($confirm) { // пароль поравильный
$this->Auth->login($user['User']);
$data = $this->Session->read('Auth');
} else {
$data = array('Error' => 'Bad password');
}
$this->set(compact('data'));
}
Комментариев нет:
Отправить комментарий