【问题标题】:How to implement multi-level hierarchies in user management如何在用户管理中实现多层次的层次结构
【发布时间】:2009-11-16 09:50:56
【问题描述】:

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

假设在应用程序中可以有 N 个用户层次结构...

  • 超级用户

    • 子用户

      • 子用户-1

例如,因此 Sub 用户是 sub user-1 的超级用户。这样子用户将处理他的超级用户的所有工作。

如何为此设计数据库。

【问题讨论】:

  • 请更具体,并校对您的问题。
  • 希望有人能看懂,因为我看不懂
  • 是您从头开始做他的业务需求,还是您可以考虑现有的解决方案?喜欢 LDAP?

标签: php mysql database database-design


【解决方案1】:

我认为您可能正在寻找的是 ACL 库。

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

Aro 是“请求数据” - 例如。用户/组(并且可以使用嵌套集或简单的递归树 [parent_id] 构建为树)。

Aco 是所要求的 - 特定型号、页面、功能 - 什么都可以。

然后您将两者(aco 和 aro)结合起来创建 ACL - 基本上是说“这个用户/组可以/不能使用这个模型/页面”

根据您的标签,我看到您正在寻找 PHP/MySQL 解决方案 - 所以 phpGACL 可能对您非常有帮助:http://phpgacl.sourceforge.net/

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

希望对您有所帮助 - 或至少为您指明了正确的方向。

【讨论】:

  • 很好的答案,很高兴你能抽出时间来解决一个似乎让很多人感到困惑的问题。我对 phpGACL 的唯一问题是它是 3 年前的最后一次更新,知道任何替代方案或 PHP5 等价物吗?
  • 谢谢,我想这就是堆栈溢出的全部内容。谷歌搜索“phpGACL php5”提出了这个话题,这可能会将你推向正确的方向:codingforums.com/showthread.php?t=152966(第一篇文章)
  • 可惜他/她甚至没有礼貌地选择你的答案。
猜你喜欢
  • 2016-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-21
  • 2013-12-11
  • 1970-01-01
相关资源
最近更新 更多