【发布时间】:2012-02-20 07:25:10
【问题描述】:
在设计新的相当大/复杂的网站时,我正在深入研究 RBAC。 我正在尝试确定是创建一个 task 还是简单地创建一个具有 biz 规则的 operation。
现在,我已经阅读了大部分(如果不是全部)现有文档。当前的文档说“任务由操作组成”。 This wiki 文章说,不同的术语只是命名约定,唯一存在的限制是结构限制——角色必须包括任务(或其他角色);任务应该包括操作(或其他任务),操作是原子术语,不由其他实体进一步组成。 我还阅读了“Agile web dev...”和“Yii cookbook”书籍中的相关部分——两者都没有进一步阐明这个问题(至少从我的眼镜来看)。
让我们转到我将提出问题的示例。实际上,让我们使用一个类似于上面提到的大多数文档资源中演示的示例:假设我有一篇博客文章,我希望/需要让其作者能够“更新自己的文章”。现在,为什么这应该是文档资源中通常演示的任务,而不是具有 biz 规则的操作?
我认为上面的问题揭示了“任务”的模糊定义(当然是在 RBAC 上下文中)。
请帮助我为 RBAC 任务提炼出更好的定义。
编辑: 有人建议我对上述术语进行以下定义,这些定义有助于以有用的方式将它们概念化。简而言之,以最简单的形式:操作是基本的构建块。他们是材料开发人员,并且只有他们。开发人员在操作之上和之上组成任务。 角色由任务组成,就像一组任务。角色和任务是站点管理员应该使用的 - 分配和撤销给用户而不是操作。 这是查看和掌握这些实体(角色、任务和操作)的好方法。 您还有其他选择来进行不同的概念化吗?任何 cmets 将不胜感激。
TIA! 波阿斯。
【问题讨论】: