2017 © Pedro Peláez
 

library login-vendor

image

kemerovo-man/login-vendor

  • Wednesday, June 6, 2018
  • by kemerovo_man
  • Repository
  • 1 Watchers
  • 0 Stars
  • 68 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

Логин вендор для Laravel 5.7, 5.8

Добавляет в проект простую авторизацию. Показывает форму с логин/паролем, при удачной авторизации пишет в сессию переменную loginVendorRole. Настроики в config/login.php Добавляет в проект роуты: /login /logout, (*1)

Установка

  1. добавить в composer.json

для Laravel 5.7, (*2)

    "require": {
        "kemerovo-man/login-vendor": "5.7.*"
    }

для Laravel 5.8, (*3)

    "require": {
        "kemerovo-man/login-vendor": "5.8.*"
    }
  1. добавить в app.conf
    'providers' => [
        KemerovoMan\LoginVendor\LoginVendorServiceProvider::class
    ]
  1. php artisan vendor:publish, (*4)

  2. настроить config/login.php, (*5)

можно настроить несколько ролей, в каждой роли настроить нескольких пользователей, и редирект для каждой роли., (*6)

Например:, (*7)

'roles' => [
        'admin' => [
            'redirectTo' => env('LOGIN_ADMIN_REDIRECT_TO'),
            'credentials' => [
                [
                    'login' => env('LOGIN_ADMIN_LOGIN'),
                    'password' => env('LOGIN_ADMIN_PASSWORD')
                ]
            ]
        ],
        'user' => [
            'redirectTo' => env('LOGIN_USER_REDIRECT_TO'),
            'credentials' => [
                [
                    'login' => env('LOGIN_USER_LOGIN'),
                    'password' => env('LOGIN_USER_PASSWORD')
                ]
            ]
        ]
    ]

Создать Middleware с проверкой в сессии переменной loginVendorRole, (*8)

Например:, (*9)

class IsAdminMiddleware
{
    public function handle($request, Closure $next)
    {
        if (session('loginVendorRole') == 'admin') {
            return $next($request);
        } else {
            return redirect()
                ->action('\KemerovoMan\LoginVendor\LoginController@index');
        }
    }
}

или использовать готовую: добавить в app\Http\Kernel.php, (*10)

   protected $routeMiddleware = [
          'isAdmin' => \KemerovoMan\LoginVendor\Middleware\IsAdminMiddleware::class
      ];

The Versions

06/06 2018
05/06 2018