Java Web权限管理设计及实现
最近在做一个权限相关的功能,在项目原有权限管理上面进行扩展,一方面支持界面上控制到按钮级别,后端接口没有权限不能进行访问;另一个方面,对项目中应用管理模块的应用管理员授权,使其具有对其名下的应用添加用户的权限,而不必像原来一样,所有的用户都必须系统管理员进行添加。
整理了一下原有的权限和新增的功能,对整体做一下总结。项目做的是一个灰度发布平台,使用spring+springMvc+mybatis,前端框架是bootstrap,权限是使用的shiro,前端使用了一个adminLte的前端框架。
数据库设计:
1、菜单权限:
- 用户表(user): 存储用户基本信息
- 角色表(role): 存储系统角色信息
- 角色-用户关联表(role-user):存储角色和用户的对应关系(n:n)
- 资源表(resource):存储系统菜单资源,包括上级菜单,子菜单,按钮,按层级进行标识
- 资源-角色关联表(resource-role):存储资源和角色的对应关系(n:n)
- 应用表(application):存储系统中应用信息
- 角色-应用关联表(role-application) :对应用关联角色(n:n)
- 用户-应用关联表(user-application):将用户和应用进行关联,为用户分配对应的应用权限,比如应用管理员,研发人员,用户等。
具体实现:
界面交互:
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
Java Web权限管理设计及实现相关推荐
- java web权限管理
数据库设计 我的设计如下: 用户:fu_admin 角色:sys_role 权限:sys_purview 用户-角色:sys_user_role 角色-权限:sys_role_purview 标准的权 ...
- 系统权限管理设计 (转:http://blog.csdn.net/chexlong/article/details/37697555)
权限设计(转:http://blog.csdn.net/chexlong/article/details/37697555) 1. 前言: 权限管理往往是一个极其复杂的问题,但也可 ...
- python通用权限管理框架图_通用权限管理设计篇_设计模式
摘要: 本文讲的是通用权限管理设计篇_设计模式, 博客地址:http://www.blogjava.net/amigoxie/ 一.引言 因为做过的一些系统的权限管理的功能虽然在逐步完 ...
- 系统权限管理设计 (转)
权限设计(初稿) 1. 前言: 权限管理往往是一个极其复杂的问题,但也可简单表述为这样的逻辑表达式:判断"Who对What(Which)进行How的操作"的逻辑 ...
- 通用权限管理设计篇_设计模式
摘要: 本文讲的是通用权限管理设计篇_设计模式, 博客地址:http://www.blogjava.net/amigoxie/ 一.引言 因为做过的一些系统的权限管理的功能虽然在逐步完 ...
- 一个简易实用的web权限管理模块的应用与实现
本文介绍一个简易实用的web权限管理模块的应用与实现. 先介绍数据模型和应用界面,后继对实现细节做选择性阐述. 数据表关系如下: 该图标明了登陆用户.角色.部门(机构).用户组.角色和模块功能之间的关 ...
- 通用权限管理设计 之 数据权限
阅读目录 前言 初步分析 通用查询机制 数据权限规则 实际应用 结语 前言 前一篇文章<通用权限管理设计 之 数据库设计方案>介绍了[主体]- [领域] - [权限]( who.what. ...
- (转)通用权限管理设计 之 数据权限
转自:leo's Space http://www.cnblogs.com/leoxie2011/archive/2012/03/20/2408542.html 阅读目录 前言 初步分析 通用查询机制 ...
- RBAC权限管理设计思想
RBAC权限管理设计 一.概述 二.权限模型 三.RBAC模型 什么是RBAC模型 基本模型RBAC0 角色分层模型RBAC1 角色限制模型RBAC2 统一模型RBAC3 基于RBAC的延展--用户组 ...
最新文章
- 手把手教你搭建 Git 服务器
- Kvm虚拟机克隆以及添加磁盘
- 灵动微电子逐飞 智能车支持计划汇总
- SVN之文件同步更新
- java怎么打印进制,java编程思维_007打印二进制,八进制,十六进制
- spring mvc学习(41):restful的crud的项目原型介绍
- CSS3动画 - 地球 - 指南针旋转
- VS2010平台下OpenCV编译和安装
- 基于统计的压缩算法:游程编码
- LeetCode Java面试刷题笔记汇总
- 2020年物联网平台调研报告
- python zip压缩文件
- python中import用法sys_python sys模块的常见用法汇总
- Git常用命令有哪些?
- 微信获取信息用户登录报错redirect_uri域名与后台配置不一致,错误码10003
- 关于虚拟机无法启动(The VMware Authorization Service is not running)
- 《洋妞》万像电影节揽四奖 或打造同名综艺节目
- (java)length与length() 的区别
- matlab踩坑 自带surf 函数找不了 surf 作为函数执行
- keil 软件,不带flash,使用Jlink调试程序