gpt4 book ai didi

php - Web 应用程序中多个用户的访问控制

转载 作者:可可西里 更新时间:2023-11-01 07:29:33 25 4
gpt4 key购买 nike

我正在开发一个 PHP + MySQL 社交网络应用程序,现在我需要为全局(所有项目)和/或自有项目(由他们自己创建的项目)设置不同的访问控制(读取、创建、编辑、删除) ) 为每个模块分组或特定用户。

有没有人对此有建议(表结构等)?


好的,我在这里提供更多细节,目前我有一个 tbl_module、tbl_user 和 tbl_user_role。每个用户和角色可以对特定模块有不同的访问权限。

  • 阅读
  • 更新
  • 创建
  • 删除

并按全局访问权限或仅限自己(自己的帐户或自己创建的记录)划分。

和我目前的方法:我创建另一个表来保存访问详细信息:

  • acl_uid
  • mod_id(fk 模块 uid)
  • target_id(fk 用户 uid 或角色 uid)
  • acl_type(用户/角色识别目标id引用)
  • acl_read
  • acl_更新
  • acl_创建
  • acl_delete

acl_read、acl_update、acl_create、acl_delete取值范围:

  • 0 拒绝
  • 1 允许
  • 2 指低优先级检查(如果用户有值 2 则指角色)
  • 3只自己

我相信有更有效的方法来解决这个问题,或者可以改进我目前的方法。

感谢您的回复。

最佳答案

这是一个非常广泛的问题,因此您可能只会得到非常广泛的答案。

大多数 CMS 系统都有一个表格,其中列出了可以在系统上生成的内容类型。

另一个表格描述了每种类型的内容是如何显示的(在首页、个人博客页面等)。

另一个表为每个用户提供一个或多个“用户类型”或“组”,例如管理员、未注册、版主等。

最后一个表是某种访问表 - 它显示了每个组有权做什么,包括它可以创建、编辑、发布等的内容类型。

我建议你花点时间研究一下其他CMS软件的数据库模式,比如Slashcode , Drupal ,或其他数百万个 CMS 系统之一。

-亚当

关于php - Web 应用程序中多个用户的访问控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/220419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com