为什么无法使用Autra ::在Laravel中尝试对用户进行身份验证?

时间:2013-08-06 13:15:08

标签: php redirect frameworks laravel

这是路径文件,$ users显示值但登录失败

Route::post('login', function () {


    $user = array(
        'username' => Input::get('username'),
        'password' => Input::get('password')
    );



    if(Auth::attempt($user))
        {
        return Redirect::to('profile')
            ->with('flash_notice', 'You are successfully logged in.');
         }
    else
    {
    // authentication failure! lets go back to the login page
        return Redirect::route('login')
            ->with('flash_error', 'Your username/password combination was incorrect.')
            ->withInput();
    }
});

模态:

<?php

use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;

class User extends Eloquent implements UserInterface, RemindableInterface {

    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'users';

    /**
     * The attributes excluded from the model's JSON form.
     *
     * @var array
     */
    protected $hidden = array('password');

    /**
     * Get the unique identifier for the user.
     *
     * @return mixed
     */
    public function getAuthIdentifier()
    {
        return $this->getKey();
    }

    /**
     * Get the password for the user.
     *
     * @return string
     */
    public function getAuthPassword()
    {
        return $this->password;
    }



    /**
     * Get the e-mail address where password reminders are sent.
     *
     * @return string
     */
    public function getReminderEmail()
    {
        return $this->email;
    }

}

1 个答案:

答案 0 :(得分:1)

使用Laravel提供的身份验证机制时,您应该传递以下检查列表:

  1. 存储密码的数据库列应为长度 60个字符的字符串。
  2. 密码应存储加密,不清楚。由于我们讨论的是BCrypt,它必须是类似于$2a$10$KssILxWNR6k62B7yiX0GAe2Q7wwHlrzhF3LqtVvpyvHZf0MwvNfVu的值。
  3. 您必须通过编辑位于app/config/auth.php
  4. 的文件来配置安全机制

    之后,您最终将解决问题。