基于角色的权限管理系统设计思路

原创 2017年05月18日 18:05:11

概述

权限管理功能是项目中重要的部分,通过权限系统可以控制系统中各用户所拥有的权限,比如能否打开一个页面,能否进行某项操作,合理的权限控制可以规避误操作的风险,提高系统的可用性。
权限管理的思路一般为基于角色和基于资源两种,基于角色即对为用户赋予某些角色的权限,基于资源则为对用户赋予某些资源的权限。两种既可以单独实现,也可结合起来使用。

设计思路

系统中抽象出操作、角色、用户三个概念,其中操作由项目中抽象出来,一个操作可以是一个URI,也可以是一个方法,比如创建用户的操作,删除用户的操作。角色是权限管理的核心,一个角色具有某些操作的权限,比如用户管理员,这个角色具有的权限有添加用户的权限、修改用户的权限、删除用户的权限。系统中的用户则被赋予若干个角色,比如如果有一个用户A被赋予了用户管理员的角色,那他就能添加、修改、删除用户。

表结构设计

使用MySQL和MongoDB都可以,MongoDB可以直接用数组保存用户所具有的角色
项目表

字段名 说明
id
token 密钥
name 项目名称
ctime 创建时间
mtime 修改时间

操作表,uri是唯一索引

字段名 说明
id
project_id 项目id
uri 操作的地址
name 操作名称
status 状态
ctime 创建时间
mtime 修改时间

角色表

字段名 说明
id
project_id 项目id
actions 具有权限的操作
status 状态
ctime 创建时间
mtime 修改时间

用户表
角色表

字段名 说明
id
project_id 项目
name 用户名
roles 所属的角色
status 状态
ctime 创建时间
mtime 修改时间
版权声明:本文为博主原创文章,未经博主允许不得转载。

安装一个tomcat可以运行多个tomcat实例

catalina.home和catalina.base这两个属性仅在你需要安装多个Tomcat实例而不想安装多个软件备份的时候使用,这样能节省磁盘空间。 以Tomcat6.0为例,其Tomcat目录...

SpringMVC拦截器(资源和权限管理)

1.DispatcherServlet     SpringMVC具有统一的入口DispatcherServlet,所有的请求都通过DispatcherServlet。     Dispatche...
  • xwq911
  • xwq911
  • 2016年04月22日 00:06
  • 185

局域网聊天|权限管理系统设计思路

最新权限管理系统组件源码已经有2年半时间了权限管理系统设计思路,局域网聊天一直坚信会有懂行的客户会欣赏这套组件源码,无意间一个北京的一个客户购买了这套组件的源码,然后经过来回联系几次,客户对我的系统架...
  • shooow
  • shooow
  • 2011年01月20日 00:40
  • 575

通用角色权限管理系统设计

  • 2012年05月01日 17:25
  • 525KB
  • 下载

后台经验分享:如何做权限管理系统设计?

作者:橘子洲头 全文共 2210 字 5 图,阅读需要 6 分钟 ———— / BEGIN / ———— 在人人都是产品经理的网站上蛰居了4年,学习了四年,由于最近的工作方向偏向...

权限管理系统设计

通用数据权限管理系统设计(一) 前言: 本文提供一种集成功能权限和数据权限的解决方法,以满足多层次组织中权限管理方面的集中控制。本方法是RBAC(基于角色的访问控制方法)的进一步扩展和...
  • hehewjt
  • hehewjt
  • 2012年08月16日 09:57
  • 1040

通用数据权限管理系统设计

通用数据权限管理系统设计 通用数据权限管理系统设计(一)     前言:  本文提供一种集成功能权限和数据权限的解决方法,以满足多层次组织中权限管理方面的集中...
  • zljjava
  • zljjava
  • 2012年04月25日 16:32
  • 908

通用数据权限管理系统设计

一: 应用场景:             在实际应用中,数据权限的控制点一般相对固定,如针对公司、部门、个人、客户、供应商等,也就是说数据权限一般针对指定数据类型下的一些数据对象。    ...

通用权限管理系统设计篇

在前两篇文章中,不少朋友对我的设计提出了异议,认为过于复杂,当然在实际的各种系统的权限管理模块中,并不像这里设计得那么复杂,我以前所做的系统中,由只有用户和权限的,有只有用户、权限和角色的,还有一个系...

用户和角色:通用权限管理系统数据库表结构如何设计?

一,前言 权限管理系统的应用者应该有三种不同性质上的使用, A,使用权限 B,分配权限 C,授权权限  本文只从《使用权限》和《分配权限》这两种应用层面分析,暂时不考虑《授权权限》这种。 二...
  • e_zhiwen
  • e_zhiwen
  • 2012年07月05日 23:34
  • 16141
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基于角色的权限管理系统设计思路
举报原因:
原因补充:

(最多只允许输入30个字)