Looking to hire Laravel developers? Try LaraJobs

laravel-dummyuser maintained by longman

Description
Package to implement dummy user authorization (without database) for Laravel 5.x
Last update
2017/08/17 15:32 (dev-master)
License
Downloads
3 352
Tags

Comments
comments powered by Disqus

Laravel 5.x dummy user provider

Build Status Code Quality Latest Stable Version Total Downloads Downloads Month License

Dummy (without database) user authorization for Laravel 5.x

Table of Contents

Installation

Install this package through Composer.

Edit your project's composer.json file to require longman/laravel-dummyuser

Create composer.json file:

{
    "name": "yourproject/yourproject",
    "type": "project",
    "require": {
        "longman/laravel-dummyuser": "~1.0"
    }
}

And run composer update

Or run a command in your command line:

composer require longman/laravel-dummyuser

After updating composer, add the DummyUserServiceProvider to the providers array in config/app.php

Longman\LaravelDummyUser\DummyUserServiceProvider::class,

In the config/auth.php file you should add dummy guard in the guards array:

'guards' => [
    . . .

    'dummy' => [
        'driver' => 'session',
        'provider' => 'dummy',
    ],
]

and provider in the providers array

'providers' => [
    . . .

    'dummy' => [
        'driver' => 'dummy',
        'lifetime' => 3600, // Cache lifetime in minutes
    ],
]

Usage

You can specify default guard dummy in the config/auth.php file (defaults array) and use just Auth:: calls, or use Auth::guard('dummy'), like Auth::guard('dummy')->login($user)

For authenticating users, you need some unique identifier. You can use remote id or something like md5('some-unique-mail@mail.com')

In User model you need to add id in fillable array. And if you use string id also add protected $keyType = 'string'; field.

Usage example:

<?php
// get some user data from Restful service
$user_data = get_user_data_from_service();
$email = $user_data['email'];

$user = new User(['id' => md5($email), 'name' => $user_data['name'], ...]);

// Log in user
Auth::login($user);

TODO

write tests

Troubleshooting

If you like living on the edge, please report any bugs you find on the laravel-dummyuser issues page.

Contributing

Pull requests are welcome. See CONTRIBUTING.md for information.

License

Please see the LICENSE included in this repository for a full copy of the MIT license, which this project is licensed under.

Credits