系统权限设计说明文档
权限设计方案-技术实现说明文档
1. 新老系统权限区别
- 权限实现方式老系统使用shiro拦截器实现,新系统改变spring Interceptor,系统更为轻量,更为灵活。
- 菜单配置,老系统使用数据库存储的方式,新系统改变xml配置在项目充,不需要跟随系统发布配置。
- 权限关系缓存,老系统对每个用户的所以菜单角色缓存,新系统在这方面做了调整精简精简集中配置。
2. xml中菜单和接口信息配置规则
- 配置文件内menu标签为一个实体菜单项,menu 之间的层级关系,先后顺序,直接体现在实体菜单内。
- menu 标签下的api 表示,拥有这个menu的用户,便有权限调用对应的api接口。
- 例子:菜单1 下面标注了接口 a,b,c,菜单二下面标注了接口,c,e,f。有菜单1的用户就有权限调用,a,b,c 接口,
有菜单2的用户就有权限调用 c,e,f 接口。两个菜单都有的用户,就有权限调用,a,b,c,e,f接口。这5接口,没有在别的菜单下标注的话,那么用户如果没有这两菜单的权限,就无法调用这几个接口。
3.权限实现机制
- 系统启动后,将xml的配置信息导入到系统内。然后读取数据库中角色和菜单关系信息
- 创建【角色-菜单】映射,【接口-角色】映射,信息存入系统高速缓存中。
- 用户登录后,读取用户所以角色信息,存入系统高速缓存中。
- 获取用户菜单列表,根据用户角色信息,读取缓存中【角色-菜单】信息,去重,排序等操作之后,展示给用户。
- 用户请求api接口,读取【接口-角色】,和用户角色做匹配判断用户是否有对应权限。
- 角色菜单关系发生变化,刷新对应【角色-菜单】映射,【接口-角色】映射,保证系统权限实时更新。
- 用户角色发生变化,刷新用户角色缓存 保证用户权限实时更新。
3.菜单角色关系,用户角色关系管理,用户第系统权限管理操作。
- 参考 https://192.168.32.7:9090/svn/zjzc-web/trunk/doc/Requirement/业务需求/后端产品化/系统管理/demo/index.html 产品设计文档。
系统权限设计说明文档相关推荐
- KTV点歌系统数据库设计文档
KTV点歌系统数据库设计文档 前台e-r图 后台 E-R 3.数据库字典 SwanInfo(歌星表) 中文名 英文名 数据类型 大小 约束 备注 歌星编号 SwanID varchar 20 主键, ...
- 多系统权限设计(一)
多系统权限设计 1. 多系统基于角色的权限设计 这种方案是最常见也是比较简单的方案,不过通常有这种设计已经够了,这种方案对于每一个操作不做控制,只是在程序中根据角色对是否具有操作的权限进行控 ...
- DH ERP系统权限设计
一.系统权限定义 1.功能权限 定义:功能权限指的是用户登陆系统后,所持有的功能权限因子下的权限,而展示对应系统中各个菜单页面.操作功能等.功能权限设置分: [角色授权] [用户授权] 2.数据权限 ...
- 系统权限设计 - 基本概念和思路
点击上方"xy的技术圈",选择"设为星标" 认真写文章,用心做分享. 微信公众号:xy的技术圈 个人网站:yasinshaw.com 正文 权限系统的设计几乎是 ...
- 考研网上辅导系统用例说明文档
--用例说明文档 1项目文档的信息 1.1 项目名称及目的 项目名称:考研网上辅导系统 项目目的:(1)满足当下研究生的学习需求: (2)增加学习效率: (3)为想考研的同学提供一个使用方便的平台: ...
- 基于RBAC 的SAAS系统权限设计
为什么系统需要权限控制? 生活中有没有权限限制? 灾难片电影<2012>中富人和权贵有权登上诺亚方舟,穷苦老百姓只有等着灾难的来临: 屌丝身边为什么没有那些长得漂亮.身材好的姑娘存在? 因 ...
- 系统权限设计实现_精确菜单和按钮
每个系统都离不开权限控制,这里来说说页面上控制到按钮的思路,仅提供思路: 使用 角色 + 资源(菜单和菜单对应页面上的按钮)+ 授权的方式. 1 定义角色与用户: 假定这里我们只控制到角色这一层次, ...
- 门窗生产工厂MES系统,功能需求说明文档
1.概述 该系统针对门窗生产工厂,对门窗生产的产线进行管理和控制. 工厂生产的窗户,用于商业大楼,每次的生产安排按项目进行组织.一个项目会是某个大厦的很多窗户,比如有18层楼,有东南西北4个面,每个面 ...
- 企业招聘驱动的社会人才需求动态监测系统的设计文档(部分)
目 录 1项目背景及整体方案... 1 1.1项目背景... 1 1.2整体方案分析... 1 1.2.1 系统上下文分析... 1 1.2.2项目用户分析... 1 1.2.3项目业务场景... 2 ...
最新文章
- 求排列的逆序数(分治)
- wamp php http 1.0500,HTTP 错误 500.0 - Internal Server Error C:\php-5.3.5\php.exe - FastCGI 进程意外退出...
- BootStrap-select插件动态添加option无法显示
- ansys参数化编程与命令手册_查看Bash手册--man命令
- STM32 的加密实现(转)
- 关于SafeMove White Paper功能
- 将JSON转成DataSet(DataTable)
- 莱比锡爆料:《星际争霸2》估计明年也没戏
- 训练神经网络的一些技巧(包括激活和损失函数的选择、调参、过拟合等)
- 5.3Python数据处理篇之Sympy系列(三)---简化操作
- 555定时器回差电压计算公式_555定时器及其应用
- 索引、分区和分桶的区别
- Oracle 官方文档地址
- html position属性作用,CSS学习之浅谈position属性
- 使用Fragstats对栅格数据进行分析
- 在线抓娃娃 html,萤石云开放平台提供在线抓娃娃解决方案
- ubuntu 下使用tar将文件夹(大文件)分包压缩
- 伊利诺伊计算机专业本科好入吗,伊利诺伊大学香槟分校本科有计算机专业吗?...
- 信息安全-网络安全风险评估技术原理与应用(一)
- v.douyin.com/xxx抖音网址官方生成制作抖音缩短口令网址php接口方法