2009-11-16 47 views
-2

实现多级层次结构,使超级用户也拥有子用户拥有的所有权限,这意味着超级用户也可以管理子用户的工作。在应用如何在用户管理中实现多级层次

假设有可能是用户层次结构的N多...

  • 超级用户

    • 副用户

      • 副用户-1

例如So子用户是子用户1的超级用户。这样子用户将处理他超级用户的所有工作。

如何为此设计数据库。

+0

请更具体一些,并校对你的问题。 – phidah 2009-11-16 10:03:12

+0

我希望有人能够理解这一点,因为我不能 – 2009-11-16 10:05:16

+1

这是一个业务需求,你从头开始做,或者你可以考虑现有的解决方案吗?像LDAP一样? – beggs 2009-11-16 10:05:46

回答

5

我想你可能要找的是一个ACL库。

ACL代表访问控制列表。它使用2个称为ARO和ACO的“子模型”。

Aro的是什么是“请求数据” - 例如,用户/组(可以使用嵌套集合构造树,或者使用简单的递归树[parent_id])。

Aco's是什么被请求 - 一个特定的模型,一个页面,一个功能 - 什么。

,那么你将二者结合起来(ACO和ARO)创建ACL - basicly说:“这个用户/组可以/不可以使用这个模型/页”

根据你的标签我看到你寻找一个PHP/MySQL解决方案 - 所以phpGACL可能对你非常有用:http://phpgacl.sourceforge.net/

它是一个完整的“框架”,用于管理ACL,您可以轻松地将它组合到您的应用程序中(结构化程度如何)。

希望能帮助你一点 - 或者至少指出你在正确的方向。

+0

不错的答案,你好,花时间来攻击一个似乎让很多人困惑的问题。我唯一与phpGACL有关的问题是它是3年前的最后一次更新,知道任何替代品或PHP5等价物? – 2009-11-16 14:59:48

+0

谢谢,我想这是堆栈溢出的全部内容。 以及谷歌搜索“phpGACL php5”提出这个话题,可能会推动你在正确的方向: http://codingforums.com/showthread.php?t=152966 (第一篇文章) – Ken 2009-11-18 15:26:02

+0

为了不好他/她没有即使有礼貌选择你的答案。 – William 2012-05-12 06:17:58