用户表的设计_角色和权限管理数据表设计

用户表的设计_角色和权限管理数据表设计基于角色的访问控制:(javaWeb编程口诀)用户表角色表,用户角色中间表。角色表权限表,角色权限中间表。一个用户可有多个角色,一个角色又可有多个权限。这就是用户-角色-权限授权的模型。为何不直接让用户对应权限?角色=一定数量的权限集合将特定用户的权限封装到一个角色。封装,或者面向对象设计的体现。不足:此时,在用户之上加一个userGroup用户组的概念。可给单个用户授权或特定用户组授权。这样,一次授权,多个用户得到相同权限,此时用户所拥有的权限是用户个人权限+用户所在组权限用户组,用户与角色三者的关系

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

基于角色的访问控制:(java Web 编程口诀)

用户表角色表,用户角色中间表。

角色表权限表,角色权限中间表。

用户表的设计_角色和权限管理数据表设计



一个用户可有多个角色,一个角色又可有多个权限。这就是用户-角色-权限授权的模型。

用户表的设计_角色和权限管理数据表设计

为何不直接让用户对应权限?

角色=一定数量的权限集合

将特定用户的权限封装到一个角色。

封装,或者面向对象设计的体现。



不足:

用户表的设计_角色和权限管理数据表设计

此时,在用户之上加一个userGroup用户组的概念。可给单个用户授权或特定用户组授权。

这样,一次授权,多个用户得到相同权限,此时用户所拥有的权限是用户个人权限+用户所在组权限

用户组,用户与角色三者的关系:

用户表的设计_角色和权限管理数据表设计



应用系统中权限的表现形式:

菜单访问,功能模块操作,文件上传,删改,按钮图片是否可见等。都属于权限控制范畴。

有些权限设计将功能操作作为一个类型,把文件菜单页面元素等作为另外一个类型,这就是用户-权限-资源的授权模型。

相关sql可参考:

用户、角色、权限表的关系(mysql)_harbor1981的博客-CSDN博客_数据库用户和角色的关系icon-default.png?t=M4ADhttps://blog.csdn.net/harbor1981/article/details/78149203

关于各种表的字段可参考:

用户·角色·权限·表的设计 – oo_o – 博客园 (cnblogs.com)icon-default.png?t=M4ADhttps://www.cnblogs.com/oo_o/p/8213448.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188738.html原文链接:https://javaforall.net

(0)
上一篇 2026年4月15日 下午7:01
下一篇 2026年4月15日 下午7:07


相关推荐

  • Brocade 光纤交换机级联配置「建议收藏」

    Brocade 光纤交换机级联配置「建议收藏」一、需求说明两台Brocade光纤交换机做级联二、检查级联许可:首先分别核查两台设备是都均具有级联License:1、通过licenseshow命令查看:三、更改DomainID修改switchdomainID,确保两台switch的domainID唯一1、运行switchshow命令确认当前的domainID:switch:admin>…

    2022年5月21日
    149
  • mysql数据库面试题目及答案_java面试数据库常见问题

    mysql数据库面试题目及答案_java面试数据库常见问题本文的面试题如下:MyisAM和innodb的有关索引的疑问innodb为什么要用自增id作为主键MySql索引是如何实现的说说分库与分表设计(面试过)聚集索引与非聚集索引的区别事务四大特性(ACID)原子性、一致性、隔离性、持久性?事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?MySQL常见的存储引擎InnoDB、MyISAM的区别?【~】数据库三…

    2022年8月27日
    10
  • Makefile missing separator. Stop.怎么解决「建议收藏」

    Makefile missing separator. Stop.怎么解决「建议收藏」现象:在makefile中写入:all:cleancompclean:./clean.cshcomp:./run_tc命令行的背景显示为红色。运行ma

    2022年4月26日
    73
  • echarts图表鼠标悬浮显示数据

    echarts图表鼠标悬浮显示数据option xAxis type category data Mon Tue Wed Thu Fri Sat Sun yAxis type value series data 120 200 150 80 70 110 130 type bar

    2026年3月16日
    3
  • 微信小程序-开发入门(一)

    微信小程序-开发入门(一)微信小程序已经火了一段时间了,之前一直也在关注,就这半年的发展来看,相对原生APP大部分公司还是不愿意将主营业务放到微信平台上,以免受制于腾讯,不过就小程序的应用场景(用完即走和二维码分发等)还是很值

    2022年8月5日
    7
  • Lua 语言

    Lua 语言Lua 是一种轻量语言 它的官方版本只包括一个精简的核心和最基本的库 这使得 Lua 体积小 启动速度快 它用标准 C 语言编写并以源代码形式开放 编译后仅仅一百余 K 可以很方便的嵌入别的程式里 和许多 大而全 的语言不一样 网路通讯 图形界面等都没有默认提供 但是 Lua 可以很容易地被扩展 由宿主语言 通常是 C 或 C 提供这些功能 Lua 可以使用它们 就像是本来就内置的功能一样 事实上 现在已经有很多成熟

    2026年3月17日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号