【发布时间】:2015-01-24 22:45:36
【问题描述】:
我正在构建一个 Laravel 应用程序。我需要区分来宾、管理员和所有者。我计划使用Confide and Entrust。让我举一个 todo-application 的例子:
问题的第一部分: 来宾只能访问前端,管理员可以访问后端来添加/编辑他的“自己的”项目和做项目。所有者可以查看所有注册用户的所有项目,还可以查看有关多少项目和任务、有多少用户正在使用该应用程序、为给定用户重置密码、票务系统等的统计信息......
我将创建三个角色:访客、管理员和所有者(使用 Entrust)。然后我会(在路由器文件中)说所有以 admin 开头的路由都需要经过身份验证。但是如何为“所有者”解决这个问题。所以我有以下情况:
1) 访客路由:Route::group(array('before' => 'guest'), function(){....} 2) 管理员路由:Route::group(array('prefix' => 'admin', 'before' => 'auth'), function() { ...} 3) 车主路线:??
如何修复所有者路由:是否像这样做一样简单:Route::group(array('prefix' => 'owner', 'before' => 'auth'), function() { } or should我将所有者作为“管理员”部分的一部分并在控制器中进行区分?
问题的第二部分:如何确保订阅应用程序的用户自动分配管理员角色。
问题的第三部分:如何确保只有 1 个所有者可以访问应用程序的完整权限?
【问题讨论】:
标签: php laravel user-roles