I want to use basic.auth
for my web page but authentication donst work
routes.php
admin
- authentication
Route::get('admin', array('before' => 'auth.basic', function()
{
return 'Top secret';
}));
create
- create test user
Route::get('create', function()
{
$user = new User;
$user->email = 'test@test.com';
$user->username = 'test';
$user->password = Hash::make('password');
$user->save();
});
config
app/config/app
- has definedkey
(that created Laravel installation)app/config/auth
- has definedmodel
(User
) andtable
(users
)
filters.php
auth.basic
Route::filter('auth.basic', function()
{
return Auth::basic();
});
test
I call /create
to create User test@test.com
:password
Here is users
table after:
Then I call /admin
to login
But it doesnt let me in. After Login - it just clear inputs. After Cancel - it return Invalid credentials.
.
User model
I tried implement UserInterface
<?php
use Illuminate\Auth\UserInterface;
class User extends Eloquent implements UserInterface {
protected $table = 'users';
/**
* 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->passsword;
}
}
Problem solved
I had typo in User
model return $this->passsword;
There is 3 s
.
Now I use default Laravel User model.