folivaresrios/overseer

基于 Laravel 路由特性的 Laravel 扩展包,用于管理配置和权限

1.2 2018-02-19 04:00 UTC

This package is not auto-updated.

Last update: 2024-09-28 20:19:55 UTC


README

Laravel 5.3 License

结构基于: caffeinated/shinobi

Overseer 为 Laravel 内置的 Auth 系统提供了一个简单的基于配置的权限管理系统。Overseer 支持以下 ACL 结构

  • 每个用户可以有零个或多个配置。
  • 每个配置可以有零个或多个权限。

然后通过用户分配的配置将权限继承到用户。

该包遵循 FIG 标准 PSR-1PSR-2,和 PSR-4。此包尚未进行单元测试,但计划进行测试。

文档

Wiki: KissDev Overseer Wiki

要求

master 分支有以下要求

  • Laravel 5.* 或更高版本。
  • PHP 5.6.4 或更高版本。

如何安装?

[使用 Composer]

将插件添加到项目的 composer.json 文件中 - 例如:

{
  "require": {
    "folivaresrios/overseer": "^1.0"
  }
}

或者通过命令行

composer require folivaresrios/overseer

服务提供者和外观

完成此操作后,只需将服务提供者和别名添加到项目的 config/app.php 文件中,并运行提供的迁移对数据库执行操作。

'providers' => [
    //...
    KissDev\Overseer\OverseerServiceProvider::class,
    //...
];
'aliases' => [
    // ...
    'Overseer' => KissDev\Overseer\Facades\Overseer::class,
    // ...
],

迁移

您需要针对数据库运行提供的迁移。使用 vendor:publish Artisan 命令发布迁移文件,然后运行 migrate

php artisan vendor:publish
php artisan migrate

路由中间件

将以下中间件添加到 app/Http/Kernel.php 中的 $routeMiddleware 数组中,在 EncryptCookies 中间件之前:

protected $routeMiddleware = [
    //...
    'profile.overseer' => \KissDev\Overseer\Middleware\UserHasProfile::class,
    'permissions.overseer' => \KissDev\Overseer\Middleware\UserHasPermission::class,
    //...
];

报告问题

如果您在使用 Overseer 时遇到问题,请请在 GitHub 上创建问题。

贡献

如果您想为 Overseer 贡献,创建您想要添加的功能,请发送 pull requests 或在 GitHub 上创建问题。