sql >> Base de Datos >  >> RDS >> Mysql

¿Puede el sistema de autenticación de Laravel usar una base de datos existente?

Puede realizar la autenticación directamente, si necesita:

$user = User::where('email', Input::get('email'))->first();

if( $user && $user->password == md5(Input::get('password')) )
{
    Auth::login($user); /// will log the user in for you

    return Redirect::intended('dashboard');
}
else
{
   /// User not found or wrong password
}

Tenga en cuenta que las contraseñas cifradas por Laravel son realmente seguras y las cifradas por, digamos, MySQL, son todo lo contrario. Así podrías convertir tus contraseñas cada vez que tu usuario inicie sesión, sin pedirle que lo haga:

$password = Input::get('password');

$email = Input::get('email');

if (Auth::attempt(array('email' => $email, 'password' => $password)))
{
    return Redirect::intended('dashboard');
}
else
if( $user && $user->password == md5($password) )
{
    Auth::user()->password = Hash::make($password);

    Auth::user()->save();

    return Redirect::intended('dashboard');
}
else
{
    /// User not found or wrong password
}