Hyperf 使用 hyperf-permission 组件实现权限管理

照说明安装组件https://github.com/donjan-deng/hyperf-perm...

接口实现RESTful,我的权限节点的组成为

/app_name/path/method

比如
/user-center/users/get 获取用户列表
/user-center/users/put 更新用户
具体详见数据填充类permission_table_seeder.php

创建一个PermissionMiddleware.php中件间实现权限验证

//这里根据自己的需求书写验证逻辑,我这里如果没有这个权限节点,是可以通过验证的
if ($user && (!$permission || ($permission && $user->checkPermissionTo($permission)))) {
            return $handler->handle($request);
}

创建UnauthorizedExceptionHandler.php 对验证错误进行处理

exceptions.php添加该Handler

在需要权限验证的路由增加该中间件,见routes.php

博客:《PHP 微服务练兵》系列教程

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 2

这个不错,希望斑竹能把这个功能完善!

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!