文档章节

经典权限系统设计(五张表)

搬砖小队长
 搬砖小队长
发布于 2016/10/26 08:54
字数 169
阅读 34
收藏 0

大致用到5张表:用户表(UserInfo)、角色表(RoleInfo)、菜单表(MenuInfo)、用户角色表(UserRole)、角色菜单表(RoleMenu)。

  各表的大体表结构如下:

  1、用户表(UserInfo):Id、UserName、UserPwd

  2、角色表(RoleInfo):Id、RoleName

  3、菜单表(MenuInfo):Id、MenuName

  4、用户角色表(UserRole):Id、UserId、RoleId

  5、角色菜单表(RoleMenu):Id、RoleId、MenuId

 

  最关键的地方是,某个用户登录时,如何查找该用户的菜单权限?其实一条语句即可搞定:

  假如用户的用户名为zhangsan,则他的菜单权限查询如下:

  Select m.Id,m.MenuName from MenuInfo m ,UserInfo u UserRole ur, RoleMenu rm Where m.Id = rm.MenuId and ur.RoleId = rm.RoleId and ur.UserId = u.Id and u.UserName = 'zhangsan'

本文转载自:http://blog.csdn.net/chenjinping123/article/details/7971619

搬砖小队长
粉丝 14
博文 103
码字总数 46463
作品 0
徐汇
后端工程师
私信 提问
thinkPHP学习3-thinkPHP RBAC

thinkPHP带了一个扩展的RBAC模型,模型和think一样的奇葩,不走寻常路,但凡学习过其他框架童鞋,都会被绕晕倒的,PHP的debug不太会用,导致thinkPHP常常出现不显示内容,也没有错误提示,用...

安世博
2014/12/25
5.8K
5
.NET Core实战项目之CMS 第七章 设计篇-用户权限极简设计全过程

写在前面 这篇我们对用户权限进行极简设计并保留其扩展性。首先很感谢大家的阅读,前面六章我带着大家快速入门了ASP.NET Core、ASP.NET Core的启动过程源码解析及配置文件的加载过程源码解析...

依乐祝
2018/12/02
0
0
权限设计(下) - 细说权限设计

什么是权限管理 一般来说,只要有用户参与的系统,那么都要有权限管理,尤其是一些后台的管理系统, 权限管理可以实现对用户访问系统的控制,按照安全规则或者相关策略的控制,可以使用户访问...

风间影月
2016/06/07
0
0
权限管理(shiro框架)

权限管理的流程 页面中的菜单和按钮就是我们访问某个功能的入口。 无论是访问菜单或者按钮,要想完成某个业务操作,实际上是需要发送一个http请求,访问Action,在服务端完成某个操作。 认证...

我是小个子啊
2016/05/20
628
3
请问如何设计系统权限设计

系统权限设计 权限包括功能权限和数据权限 功能权限: 组织机构,是公司的组织架构,有不同的组织类型(公司、部门、小组、其他),有上下级关系。 用户:系统登录使用用户,用户挂在组织机构...

帐号以作废
2014/04/24
1K
4

没有更多内容

加载失败,请刷新页面

加载更多

TypeScript……真香

写前端或者用 node 写命令行小工具一直采用的 es6 的语法,对于 TypeScript 则是秉持敬而远之的态度,毕竟团队中多推广一门语言所需要花费的精力都是让人望而却步的。所以对于 JavaScript 的...

郁也风
32分钟前
2
0
shell基本案例

1、自定义rm linux系统的rm命令太危险,一不小心就会删除掉系统文件。 写一个shell脚本来替换系统的rm命令,要求当删除一个文件或者目录时,都要做一个备份,然后再删除。下面分两种情况,做...

寰宇01
39分钟前
2
0
分享一波 ZooKeeper 面试题

ZooKeeper是什么? ZooKeeper提供了什么? Zookeeper文件系统 ZAB协议? 四种类型的数据节点 Znode Zookeeper Watcher 机制 -- 数据变更通知 客户端注册Watcher实现 服务端处理Watcher实现 ...

搜云库技术团队
53分钟前
1
0
谈谈你对volatile的理解

1、volatile是Java虚拟机提供的轻量级的同步机制 -保证可见性 -不保证原子性 -禁止指令重排 2、JMM你谈谈 JMM(Java内存模型,简称JMM)本身是一种抽象的概念并不真实存在 ,它描述的是一组规...

一只小青蛙
今天
2
0
Redox OS 发布 0.5 版

Redox OS 是一个几乎完全以 Rust 语言编写的通用操作系统及周围生态(例如文件系统、显示服务器及 Rust 版本的 libc)。其遵循微内核架构,在一定程度上兼容于 POSIX。 该项目于日前发布了 ...

linuxCool
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部