您描述的方法 – 存储在列中的各个权限 – 是以直接的方式牺牲灵活性(如您所注意到的).

Zuul的方法更简单,与您的方法基本相同,只是它避免了任何“ALTER TABLE”语句的需要.但是,它没有规范化,不易查询,也不能自我记录.

这两种方法的另一个问题是,随着用户群的增长,您会发现保持每个人的权限设置正变得越来越困难.你会发现自己有很多需要完全相同特权的用户.然而,为了更改用户的权限(例如容纳新权限),您必须进入并将该权限添加到需要单独使用它的每个用户.主要PITA.

对于论坛,您不太可能需要每用户权限管理.您更有可能拥有某些类别的用户,如匿名用户,登录用户,版主,管理员等.这将使其非常适合基于角色的访问控制(RBAC).在此系统中,您可以为每个用户分配一个角色,并为该角色授予权限.权限将作为行存储在“权限”表中.所以简化的数据库模式看起来像:

PRIVILEGE

int id (primary key)

varchar description

ROLE_PRIVILEGE_JOIN

privilege_id (foreign key)

role_id (foreign key)

ROLE

int id (primary key)

varchar description

USER

int id (primary key)

int role_id (foreign key)

此模式用于处理用户权限的许多应用程序中.添加任何人可能在权限表中作为一行的所有权限;添加任何用户可能在角色表中拥有的每个角色;并在role_privilege_join表中适当地链接它们.

唯一真正的缺点是因为使用了连接表,“can user X do Y”查询会慢一些.

php论坛权限设置,php – 如何实现论坛权限相关推荐

  1. 服务器共享文件夹权限设置软件,服务器共享文件夹权限设置

    服务器共享文件夹权限设置 内容精选 换一换 分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连.Ce ...

  2. python开发信息系统权限设置_[Python学习] Django 权限控制

    本文为大家讲解 Django 框架里自带的权限模型,从理论到实战演练,带领大家了解 Django 里权限是怎么一回事. 主要内容 什么是权限管理? Web 权限 Django 权限机制 Django ...

  3. android app没有读写权限设置,Android 6.0以上权限拒绝打开权限设置界面的解决方法...

    本人使用小米手机,打开qq或者微信的时候,某个权限拒绝的话,会提示你开启,点击开启会跳转到app的权限设置界面,当然了,这是国内系统深层定制的原因,也就是说这个界面原声的android没有的!这里以小 ...

  4. linux系统电脑的权限设置,Linux下的文件权限设置修改详解linux操作系统 -电脑资料...

    在linux中更改所属用户组是使用chgrp,更改文件拥有者, chown,更改9个属性, chmod这三种常用的问题,在linxu中这三个命令就是对文件目录权限的控制命令了,下面我来介绍它们的用法与 ...

  5. Android运行时权限,设置帮助类BaseActivity;电话权限,短信权限,

                                      Android运行时权限设置帮助类BaseActivity  一.电话权限 package com.glandroid.smssen ...

  6. android权限设置在哪找,Android权限申请与打开权限设置页面

    前言 应用的使用需要申请权限,但是如果用户禁用掉,或者禁用并不再提醒就必须到系统设置中开启. // 权限 implementation 'com.yanzhenjie:permission:2.0.3 ...

  7. 2016服务器文件夹权限设置,Server 2016特定用户权限划分,只显示有权限的文件夹,无法权限文件夹无法看到...

    Server 2016特定用户权限划分,只显示有权限的文件夹,无法权限文件夹无法看到 第一步,需要将最外面的文件,总文件夹权限划分一个共享用户,可以是administrator用户或者其它管理员用户. ...

  8. mysql目录权限设置_MySQL文件及目录权限设置分析-爱可生

    1 背景 创建文件及目录时,我们会对相关的权限有一定的要求,默认的可以通过系统的umask来控制.然而,在我们使用MySQL时,无论是开始使用前的初始化,还是MySQL实例启动后,创建的相关文件及目录 ...

  9. android system读写权限设置,当然需要root访问权限才能写入Android的system目录

    扎根的Android设备有时必须编辑build.prop文件以调整诸如hsdpa,显示的型号名称或许多其他内容的设置,通常必须在带有来回文件推送的计算机上或通过设备上的cli来完成.Build.pro ...

最新文章

  1. Linux下使用Vim粘贴文本错乱问题解决
  2. codeblock下载
  3. FreeMarker缓存处理
  4. 微信团队分享:微信移动端的全文检索多音字问题解决方案
  5. stm32移植freemodbusRTU(HAL库+Freertos)主机
  6. 家卫士扫地机器人好吗_扫地机器人哪个牌子好?市场最全智能扫地机器人品牌解析_扫地机器人...
  7. UVA1585 UVALive3354 Score【水题】
  8. JAVASCIPT实现WEB SERVER的问题
  9. C++不能返回string局部引用
  10. 【转】如何使用visual studio将你的程序打包成安装包
  11. Swiper的安装及使用
  12. 基础图像处理 python+opencv
  13. (Anroid Studio)用简单代码实现BMI计算器并且将应用安装到手机上
  14. poi读取受保护的excel
  15. 用户数据报协议(UDP)
  16. 结构体嵌套结构体,及其的初始化
  17. 网易云易盾三款产品入选2018网络安全全景图
  18. 案例实战:用户评论情感分析模型
  19. Python 练习题1
  20. 手机锁屏后有时收不到微信通知,有时又能收到是怎么回事?

热门文章

  1. 团队开发-CodePlex的工作模式和团队协作开发
  2. 智能安全实验室-全能优化(Guardio)错误解决(1):“出现异常:EXCEPTION_ACCESS_VIOLATION=Access Violation”...
  3. Linux 命令(12)—— wc 命令
  4. JsonCpp 入门教程
  5. 通过while循环一步步实现九九乘法表
  6. Java开发知识之Java的包装类
  7. spring boot 定时间任务
  8. linux时间同步ntp服务的安装与配置
  9. mybatis的缓存技术使用
  10. Bigendian 奇数内存地址取整形crash