lwj/laravel-rbac


README

#基于数据的RBAC

适用于前后端分离项目的权限管理

树形菜单 角色管理 用户管理 API管理

安装

使用以下命令通过composer安装此包

composer require lwj/laravel-rbac

更新composer后,将服务提供者添加到config/app.php中的providers数组

Lwj\Rbac\ServiceProvider::class,

Laravel 5.5 使用包自动发现,因此不需要手动添加ServiceProvider。

在app/Http/Kernel.php中的routeMiddleware数组中添加中间件别名

'jwt.auth' => \Tymon\JWTAuth\Http\Middleware\Authenticate::class,
'jwt.refresh' => \Tymon\JWTAuth\Http\Middleware\RefreshToken::class,

生成ENV选项

php artisan jwt:secret

配置

您还可以发布配置文件来更改实现(例如,将接口更改为特定类)或设置--helpers或--sublime的默认值。

php artisan vendor:publish --provider="Lwj\Rbac\ServiceProvider" --tag=config
php artisan vendor:publish --provider="Lwj\Rbac\ServiceProvider" --tag=assets
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"

在config/auth.php文件中,您需要做一些更改以配置Laravel使用jwt guard来驱动应用程序认证。

对文件'config/auth'进行以下更改

use Lwj\Rbac\Models\User;

并更改数组

'defaults' => [
    'guard' => 'api',
    'passwords' => 'users',
],

...

'guards' => [
    ...,
    'api' => [
        'driver' => 'token',
        'provider' => 'users',
    ],
    'rbac' => [
        'driver' => 'jwt',
        'provider' => 'users',
    ]
],

...

'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => User::class,
        ],
    ],

迁移

您还可以迁移表和基本数据

php artisan migrate

用户

默认用户

name: admin@liweijia.com
password: 123456

使用'SUPER_ADMIN'环境选项设置此系统中的超级管理员:如果您想添加新的超级管理员,可以使用 '|' 分隔符

eg:SUPER_ADMIN=admin@liweijia.com|test@liweijia.com

进入docker之后 ln -sf /var/www/html/pay-php/service2/packages/laravel-rbac/public /var/www/html/pay-php/service2/public/vendor/rbac