Я ушел в историю! Нет - в мифологию! А, плевать, куда ушел - туда ушел.
Осторожно: маты, laravel, авторизация
Бляяяяя, я чуть не застрелился с этой гребаной авторизацией.
Прошарился по stackoverflow - у всех каждый раз какие-то свои проблемы.
Как выяснилось, нежелательно трогать стандартные методы класса User + именовать поля предпочтительнее понятными для Eloquent именами, т.е. id, email, password и иже в компанию, ибо с другими версиями имен (user_id или как там это воркбенч бацает) придется отдельно позадрачиваться через вакханалию в кишках фреймворка. По идее, все реально, но вот прямо щас пошло оно в задницу, у нас все ок. Еще под пароль стоит выделять 60 символов Char/Varchar, хотя кое-где советовали 64 - я не понял, почему. А те 60 - это хэш ларавеля, как мне раньше говорил Витя. Хотя да, у меня стоит 64. Щас уже не буду проверять для 60-ти, люто в лом, но мысль понятна.
У меня была тоже тупая ошибка - даже недопонимание больше - в плане хранения пароля.
В общем, вот эта хреновина:
$username = Input::get('username');
$password = Input::get('password');
$credentials = array('username' => $username, 'password' => $password);
if (Auth::attempt($credentials))
{
return Redirect::to('/');
}
else
{
return Redirect::to('login');
}
она работает, но в базе данных нужно хранить хэши паролей. Типа Auth там сам предварительно делает хэш и сравнивает с тем, что есть в бд.
Как бы все правильно, именно хэши пристало хранить в бд, но просто... очень долгий тупняк. Аж до 4-х ночи, все как я люблю)
Сама авторизация тащилась и разбиралась вот отсюда. В качестве начала для разбора как раз норм. Единственное, что подбешивает - пример на laravel 3 и с 4-м есть мелкие различия. Впрочем, небольшие. По синтаксису.
Бляяяяя, я чуть не застрелился с этой гребаной авторизацией.
Прошарился по stackoverflow - у всех каждый раз какие-то свои проблемы.
Как выяснилось, нежелательно трогать стандартные методы класса User + именовать поля предпочтительнее понятными для Eloquent именами, т.е. id, email, password и иже в компанию, ибо с другими версиями имен (user_id или как там это воркбенч бацает) придется отдельно позадрачиваться через вакханалию в кишках фреймворка. По идее, все реально, но вот прямо щас пошло оно в задницу, у нас все ок. Еще под пароль стоит выделять 60 символов Char/Varchar, хотя кое-где советовали 64 - я не понял, почему. А те 60 - это хэш ларавеля, как мне раньше говорил Витя. Хотя да, у меня стоит 64. Щас уже не буду проверять для 60-ти, люто в лом, но мысль понятна.
У меня была тоже тупая ошибка - даже недопонимание больше - в плане хранения пароля.
В общем, вот эта хреновина:
$username = Input::get('username');
$password = Input::get('password');
$credentials = array('username' => $username, 'password' => $password);
if (Auth::attempt($credentials))
{
return Redirect::to('/');
}
else
{
return Redirect::to('login');
}
она работает, но в базе данных нужно хранить хэши паролей. Типа Auth там сам предварительно делает хэш и сравнивает с тем, что есть в бд.
Как бы все правильно, именно хэши пристало хранить в бд, но просто... очень долгий тупняк. Аж до 4-х ночи, все как я люблю)
Сама авторизация тащилась и разбиралась вот отсюда. В качестве начала для разбора как раз норм. Единственное, что подбешивает - пример на laravel 3 и с 4-м есть мелкие различия. Впрочем, небольшие. По синтаксису.
Если коротенько: храните пароли в защищенном виде и да пребудет с вами Силушка Богатырская