bkstar123 / bkscms-admin-panel
A bkstar123/bkscms的包,用于管理员用户的认证和授权
Requires
- php: ^7.1.3
- bkstar123/bkscms-utilities: ^1.0
- bkstar123/flashing: ^1.0
- bkstar123/laravel-recaptcha: ^1.1
- bkstar123/laravel-uploader: ^1.0
- bkstar123/log-enhancer: ^1.0
- bkstar123/mysql-search: ^1.0
README
为BKSCMS项目添加一个管理员面板(包含认证和授权功能)的bkstar123/bkscms包
创建BKSCMS项目,请运行以下命令
composer create-project --prefer-dist bkstar123/bkscms <your-project>
1. 要求
建议使用PHP版本7.1.3+和Laravel框架版本5.6+来安装此包
2. 安装
composer require bkstar123/bkscms-admin-panel
然后,发布包的配置文件(如果您运行php artian bkscms:install
来安装BKSCMS项目,则不需要执行此操作)
php artisan vendor:publish --provider=Bkstar123\BksCMS\AdminPanel\Providers\AdminPanelServiceProvider
3. 使用方法
该包提供了一个 artisan 命令 php artisan bkscms:initAuth --scope=<permissions|all>
如果您运行 php artian bkscms:install
来安装BKSCMS项目,以下所有步骤都是不必要的。
- 创建数据库表
php artisan migrate
- 将数据填充到roles, admins, permissions表,并进行其他配置
php artisan bkscms:initAuth --scope=all
- 为roles, permissions, admins表创建全文索引
php artisan mysql-search:init Bkstar123\BksCMS\AdminPanel\Admin php artisan mysql-search:init Bkstar123\BksCMS\AdminPanel\Role php artisan mysql-search:init Bkstar123\BksCMS\AdminPanel\Permission
它将创建两个用户 superadmin & administrator,分别具有密码 superadmin1@ 和 administrator1@。您可以使用这些凭证登录并创建您自己的用户(您必须至少将superadmins角色分配给一个用户)。最后,在推向生产环境之前,不要忘记删除/禁用默认的superadmin & administrator用户以确保安全。
稍后,当您在config/bkstar123_bkscms_adminpanel.php
中的permissions键添加更多权限时,您只需运行php artisan bkscms:initAuth --scope=permissions
来重新初始化权限表。
在控制器中,导入并使用特质Bkstar123\BksCMS\AdminPanel\Traits\AuthorizationShield,然后您可以在需要执行授权检查的每个控制器操作中放置对$this->capabilityCheck(<action>, <resource>)
的调用。
注意
该包提供了bkscms-auth & bkscms-guest中间件,分别用于替换所有CMS路由(即在路径/cms/*下)中的auth & guest。