Permissions 分层组权限理论/资源?
有人知道一些与建立Hierarchical用户帐户系统相关的好资源吗?我目前正在设置一个,正在努力解决一些更复杂的逻辑(尤其是在确定权限方面)。我希望我能找到一些资源来帮助我 一些背景:Permissions 分层组权限理论/资源?,permissions,theory,usergroups,Permissions,Theory,Usergroups,有人知道一些与建立Hierarchical用户帐户系统相关的好资源吗?我目前正在设置一个,正在努力解决一些更复杂的逻辑(尤其是在确定权限方面)。我希望我能找到一些资源来帮助我 一些背景: 我正在为一个允许嵌套组层次结构的web CMS构建一个用户帐户系统。可以允许/拒绝每个组的读、写、添加和删除权限(对于该组可以显式访问,也可以由其父组之一隐式访问)。似乎这还不够复杂,该系统还允许用户成为多个组的成员这就是我被困的地方。我已经设置好了所有内容,但我正在为确定给定用户的任务的实际逻辑而苦苦挣扎。查
我正在为一个允许嵌套组层次结构的web CMS构建一个用户帐户系统。可以允许/拒绝每个组的读、写、添加和删除权限(对于该组可以显式访问,也可以由其父组之一隐式访问)。似乎这还不够复杂,该系统还允许用户成为多个组的成员这就是我被困的地方。我已经设置好了所有内容,但我正在为确定给定用户的任务的实际逻辑而苦苦挣扎。查看列表中的权限。它允许用户创建和管理自己的组,同时有选择地分配管理权限和ACL。您可能会发现,许多烦人的细节已经在他们的模型中为您解决了 编辑:这里有一个更好的AFS文档链接: 以下是关于组的部分:
CakePHP手册对访问控制列表的工作原理进行了出色的描述
我以前确实做过这件事,而且它的实现非常简单。您将要查看SecurityPermission类 [ 我以前使用过XML(我不确定是否还会这样做),并通过CLR存储过程将该XML作为权限列表存储在SQL server中的XML列中然后权限实际上是代码中的一个枚举。每个权限都是SecurityPermission类的一个新实现(链接在上面)。用户被绑定到SQL server中定义的组,然后当用户被添加/删除到组中时,XML文档将被更新,以反映他们所属的组 用户登录后,用户凭据将加载到应用程序存储(会话),然后进行相应的访问。当需要进行授权时,应用程序存储中的XMl将通过“FromXML”下拉加载到SecurityPermission中方法。此时,我将使用以下方法确定用户是否具有权限:
- 要求
- 相交
- 联合
- 不受限制
- 发行
还可以查看此名称空间:[2]:“System.Security.Permissions”将给定组的权限集表示为位掩码。或者,将位掩码合并在一起将得到结果权限集 @Alex的更新: 我三年前写下了这个答案,但我相信我是在暗示以下内容 从问题 嵌套的组层次结构。可以允许/拒绝每个组访问 读、写、添加和删除(明确针对该组,或 这似乎并不复杂 足够了,该系统还允许用户成为多个组织的成员 团体。--这就是我被困的地方。我已经准备好了一切,但是 我正在为确定一个项目的任务的实际逻辑而挣扎 给定用户 分配与系统中组(或角色)的总权限集匹配的位掩码: e、 g.
00
(此处使用两位保持简单!)
第一位授予权限A
,第二位授予权限B
现在假设A组授予以下权限集:01
…并假设B组授予以下权限集:10
要获取任意组中用户的结果权限集,可以对权限集位掩码执行逻辑或:
Permission set for Group A 01
Permission set for Group B 10 OR
----
Resultant permission set 11 (i.e. both permission A and B are conferred)
我不知道提问者系统的细节,但这里概述的系统可以通过不同的逻辑运算符进行扩充,以实现不同的群体组成行为。Hi@Donn这看起来很有趣,听起来像是一篇很棒的博客文章。我注意到几年前你发布了这篇文章,根据你的经验,你有什么需要改进的吗现在会采取不同的方法吗?嗨@Ben,这看起来很有趣,你能用一个小例子详细说明一下吗?或者是一个有用资源的链接吗?如果它们仍然存在,你能更新这些链接吗?