Hyperf 使用 hyperf-permission 元件實現許可權管理

Donjan發表於2019-12-17

照說明安裝元件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 微服務練兵》系列教程

相關文章