Yii的RBAC中究竟是什么“任务”?

前端之家收集整理的这篇文章主要介绍了Yii的RBAC中究竟是什么“任务”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在设计新的和相当大/复杂的网站时潜入RBAC.
我想弄清楚是创建一个任务还是只是一个带有biz规则的操作.

现在,我已经阅读了大多数(如果不是全部)现有文档.当前的文档说“任务由操作组成”. This维基文章说,不同的术语只是命名约定,唯一的限制是结构一 – 角色必须包括任务(或其他角色);任务应包括操作(或其他任务),操作是不由其他实体进一步组成的原子术语.
我还阅读了“Agile web dev …”和“Yii cookbook”书中的相关章节 – 两者都没有进一步阐述这个问题(至少从我的眼镜中可以看出).

让我们举例说明我将提出的问题.实际上,让我们使用类似于上面提到的大多数文档资源中演示的示例:假设我有一篇博文,我希望/需要让其作者能够“更新自己的帖子”.现在,为什么这应该是文档资源中常见的任务,而不是具有商业规则的操作?

我认为上面的问题揭示了“任务”的含义定义(当然在RBAC背景下).

请帮我提炼出更好的RBAC任务定义.

编辑:
我被建议对上述术语的以下定义有助于以有用的方式概念化它们.简而言之,最简单的形式是:操作是基本的构建块.它们是开发人员使用的材料,只有它们.开发人员组成操作的任务和操作.角色由任务组成,例如一组任务.角色和任务是网站管理员应该使用的 – 分配和撤销用户而不是操作.
这是查看和掌握这些实体(角色,任务和操作)的好方法.
您是否有另一种选择来进行不同的概念化?任何意见将不胜感激.

TIA!
波阿斯.

我会说你和你的问题编辑一样.任务只是用户可以做的具有共同点的操作组合.所以你有操作oList,oView,oCreate和oUpdate这些是操作开发人员分配给访问控制的控制器操作,其中前两个只读 – 后两个对数据有写访问权(这就是他们的共同点) ).因此,您现在希望将这些组合到任务tInspect和tManage,它们都包含2个操作,第一个可以列出和查看,第二个可以创建和更新.或者,您可以使用tInspect查看tManage的子任务,以便具有tManage的用户可以列出,查看,更新和创建,但通常您只需将其作为两个任务.

猜你在找的PHP相关文章