- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个网络应用程序,用户可以在其中创建组并将其他用户添加到其中。多个用户可以位于多个组中。您可以通过加入群组获得某些特权或控制权,例如能够查看内容。所有这些都类似于 Facebook 的群组功能。
我知道这一切都可以通过数据库中的几个表来完成,这些表跟踪谁在哪个组中并相应地授予权限等。
我想知道是否有任何框架、理论或文章可以告知正确且最有效的方法
最佳答案
你想要的叫做ACL(访问控制列表)。有很多方法可以实现这一点(例如,查看 UNIX/linux 世界中的三步伪 ACL,或者 Windows 目录相关环境中的可继承多级 ACL)。
我使用非常简单的方法,我将在这里分享:
每个“对象”(文章、照片、任何其他资源)都有一些可以对其执行的预定义“操作”(例如“显示”、“投票”、“评论”等) 。通过每个对象和操作,我这样定义 ACL:
objectB.ActionX: all
objectC.ActionX: all !userA
objectD.Action1: group1 group2 userA !userB !group3
ACL 只是从左到右读取。每个“all”“group”“user”意味着允许对特定对象执行特定操作,而“!all”“!group”“!user”意味着不允许...
这种方法很容易实现 - 并且提供了几乎无限的可能性:)
希望这对你有帮助:)
关于javascript - 组织团体/特权的框架/理论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7181689/
我想用我的 C# 应用程序创建一个文件夹。我正在写代码,对我来说一切正常,但我的 friend 得到一个错误 Access to the path 'myfolder' is denied. 那我怎么
我遇到了这个非常大的工具,然后深入研究了一些不太漂亮的文档和/或购买了 ebook : 我只想问: Apache Nutch 如何处理 javascript 繁重的网站,以及它如何获取页面? 我的意思
在MySQL中,如何只撤销DROP DATABASE权限,而不撤销DROP TABLE权限? 最佳答案 只需为单个表分配 DROP 权限,而不是为整个数据库分配权限。 关于MySQL DROP DAT
我有一个 bash 脚本可以备份我的数据文件 (~50GB)。脚本基本上是这样的: sudo tar /backup/mydata1 into old-backup-1.tar sudo tar /b
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我在 Google 的 Cloud Composer 上运行 Airflow。我正在使用 KubernetesPodOperator并希望通过 gcsfuse 将谷歌存储桶挂载到 pod 中的目录中.
我需要从客户端机器加载一个 CSV 文件到 MySQL 服务器数据库。我正在尝试 LOAD DATA INFILE。 我的困惑是关于使用所需的访问权限- 加载数据文件- 加载数据本地 INFILE 之
我目前正在尝试在 Amazon Redshift 中创建一个新的只读用户。 我使用的 Redshift 版本是: PostgreSQL 8.0.2 on i686-pc-linux-gnu, comp
我正在尝试将 RackSpace 中的 MySQL 数据库 备份到 AWS。 我听从了这个 blog 的建议并在我的 AWS RDS 控制面板中设置了 log_bin_trust_function_c
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: How to force my .NET App to run as administrator on Wi
我是一名优秀的程序员,十分优秀!