我开始在Yii中使用srbac。
可用的选项:创建角色,任务和操作,然后分配: 操作任务,任务到角色。
我的问题是: 我是否需要为每个操作创建一个任务? 因为我想将1个操作分配给最低用户级别,4个操作分配给超级管理员。
希望我很清楚, 丹尼答案 0 :(得分:2)
角色,任务和操作都是“授权项目”,您必须拥有它。它们仅提供以树方式组织权限的方法,然后您可以选择树的任何节点并将其分配给用户。当然,也可以为用户分配多个节点,无论是否为叶子。
如果您只需要设计一个非常简单的应用,您只需创建4个“操作”(或任务或角色),然后根据您的条件将其分配给用户。但是对于大中型应用程序,建议使用树方案。
答案 1 :(得分:2)
在我的设计中,我使用任务作为基本构建块,任务的示例是“编辑自己的配置文件”,“创建文章”,“发送私人消息”等。对我来说,将这些auth项目分解为更精细的粒度是over-design。
另外,我认为您的应用程序的RBAC树不应该符合它现在面临的简单要求,而是从一开始就更加健壮。我建议设置任务和角色并为用户分配角色。我发现这是一种更直观的方式来维护网站。