【问题标题】:Role Based Access Control in a Tree System树系统中基于角色的访问控制
【发布时间】:2013-05-08 06:52:00
【问题描述】:

我正在尝试找出为结构为树系统的用户权限系统创建数据库的最佳方法。

(用于说明目的)我有三个级别的控制:1Property Group、2Property、3Building。一个属性组有几个属性,一个属性有几个建筑物。

我想在每个级别设置管理。

PropGroupAdmin可以查看和编辑设置属性组内的所有属性,以及里面的建筑物。

PropAdmin只能查看设置的属性和里面的建筑物

BldngAdmin只能查看设定的建筑

我设想它的工作方式是用户 Bobby 是一个 PropGroupAdmin,其属性组 ID 为 102。这将转化为我可以从视图中读取的一系列特定权限。

我的问题是如何设置 GroupPrivileges 表以能够继承(如果这是正确的话)层次结构?本质上允许我创建一个视图,我可以读取该视图以查看用户是否具有执行任务的正确权限。

我创建了一个小图表,说明我认为它会如何工作。

我知道这种方式行不通,我只是想弄清楚热以进行更改以获得类似的结果。

【问题讨论】:

  • 另外,我正在考虑让数据库更简单一些(仍然具有角色、权限和角色权限),但在后端代码端生成结果模型
  • 您能分享一下您解决这个问题的方法吗?

标签: database database-design rbac


【解决方案1】:

为什么要重新发明轮子?为什么不实施基于角色的访问控制标准? http://csrc.nist.gov/groups/SNS/rbac/

所有数据库都有实现。

http://www.tonymarston.net/php-mysql/role-based-access-control.html

【讨论】:

  • 标准的 RBAC 并没有解决树形数据结构的问题(可能限制是我的理解)
【解决方案2】:

如果这还不算太晚,请看一下:

http://vita.codeplex.com/wikipage?title=guide_authorization

【讨论】:

  • 谷歌浏览器阻止链接并将其标记为危险网站
猜你喜欢
  • 1970-01-01
  • 2012-07-07
  • 1970-01-01
  • 2013-04-14
  • 2010-09-11
  • 2013-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多