我将要与Laravel开发管理Web应用程序。
我需要我的用户具有不同权限的不同角色。
详细:一些用户可以添加客户,一些用户可以写与客户相关的论文,另一些用户可以只阅读该论文,而另一些用户可以只阅读该论文的一部分。
因此,我决定使用RBAC方法以获得一定的灵活性。我将使用此数据库模式(仅是示例模式,但代表了我的应用程序的需求):
我的回答是:由于用户与纸张,客户,附件等之间存在直接关系,因此如何表达RBAC规则?当他请求操作或资源时,我必须在前端检查用户的许可?还是有办法表达这种规则,甚至在后端级别?也许使用一些GRANT选项?
希望斯比可以提供帮助。谢谢!
我建议您使用一个已经可用的RBAC软件包,虽然有一些,但是其中有一些值得注意的提及包括:
根据您的使用情况,您定义了User
和Customer
等角色,can-write-paper
,can-read-paper
等权限,并将它们分配给角色或单个用户。