slimphp-api/slim-acl
Composer 安装命令:
composer require slimphp-api/slim-acl
包简介
A middleware module for Slim3 to provide ACL using ZF2's Zend\Permissions\Acl
README 文档
README
ACL middleware for slim, using Zend\Permissions\Acl
Configuration passed into the middleware constructor should look like:
[
'default_role' => 'guest',
'roles' => [
'guest' => [],
'user' => ['guest'],
'admin' => ['user']
],
/*
* just a list of generic resources for manual checking
* specified here so can be used in the code if needs be
*/
'resources' => [
'banana' => null,
'orange' => null,
],
// where we specify the guarding!
'guards' => [
/*
* list of resource to roles to permissions
* optional
* if included all resources default to deny unless specified.
*/
'resources' => [
['banana', ['user'], ['peel']],
['banana', ['admin']],
['orange', ['guest'], ['peel']],
['orange', ['user'], ['eat']],
],
/*
* list of literal routes for guarding.
* optional
* if included all routes default to deny unless specified.
* Similar format to resource 'resource' route, roles, 'permission' action
* ['route', ['roles'], ['methods',' methods1']]
*/
'routes' => [
['/home', ['user'], ['get']],
['/user', ['admin'], ['get', 'post']], // $app->map(['POST', 'PUT'], '/user', ...);
['/user/{id}', ['user'], ['get']], // $app->map(['GET'], '/user/{id}', ...);
],
/*
* list of callables to resolve against
* optional
* if included all callables default to deny unless specified.
* 'permission' section is combined into the callable section
* ['callable', ['roles']]
*/
'callables' => [
['App\Controller\UserController', ['user']], // $app->map(['GET'], '/user', 'App\Controller\UserController'); class with __invoke
['App\Controller\UserController:getAction', ['user']], // $app->map(['GET'], '/user/{id}', 'App\Controller\UserController:getAction'); class and method
]
]
]
Important: The route should be determined before the app middlewares are being fired by:
$app = new Slim\App([
'settings' => [
'determineRouteBeforeAppMiddleware' => true,
]
]);
slimphp-api/slim-acl 适用场景与选型建议
slimphp-api/slim-acl 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 7.58k 次下载、GitHub Stars 达 17, 最近一次更新时间为 2015 年 10 月 31 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 slimphp-api/slim-acl 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 slimphp-api/slim-acl 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 7.58k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 17
- 点击次数: 24
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-10-31