权限设计方案-技术实现说明文档

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 产品设计文档。

系统权限设计说明文档相关推荐

  1. KTV点歌系统数据库设计文档

    KTV点歌系统数据库设计文档 前台e-r图 后台 E-R 3.数据库字典 SwanInfo(歌星表) 中文名 英文名 数据类型 大小 约束 备注 歌星编号 SwanID varchar 20 主键, ...

  2. 多系统权限设计(一)

    多系统权限设计 1.      多系统基于角色的权限设计 这种方案是最常见也是比较简单的方案,不过通常有这种设计已经够了,这种方案对于每一个操作不做控制,只是在程序中根据角色对是否具有操作的权限进行控 ...

  3. DH ERP系统权限设计

    一.系统权限定义 1.功能权限 定义:功能权限指的是用户登陆系统后,所持有的功能权限因子下的权限,而展示对应系统中各个菜单页面.操作功能等.功能权限设置分: [角色授权] [用户授权] 2.数据权限 ...

  4. 系统权限设计 - 基本概念和思路

    点击上方"xy的技术圈",选择"设为星标" 认真写文章,用心做分享. 微信公众号:xy的技术圈 个人网站:yasinshaw.com 正文 权限系统的设计几乎是 ...

  5. 考研网上辅导系统用例说明文档

    --用例说明文档 1项目文档的信息 1.1 项目名称及目的 项目名称:考研网上辅导系统 项目目的:(1)满足当下研究生的学习需求: (2)增加学习效率: (3)为想考研的同学提供一个使用方便的平台: ...

  6. 基于RBAC 的SAAS系统权限设计

    为什么系统需要权限控制? 生活中有没有权限限制? 灾难片电影<2012>中富人和权贵有权登上诺亚方舟,穷苦老百姓只有等着灾难的来临: 屌丝身边为什么没有那些长得漂亮.身材好的姑娘存在? 因 ...

  7. 系统权限设计实现_精确菜单和按钮

    每个系统都离不开权限控制,这里来说说页面上控制到按钮的思路,仅提供思路: 使用 角色 + 资源(菜单和菜单对应页面上的按钮)+ 授权的方式. 1  定义角色与用户: 假定这里我们只控制到角色这一层次, ...

  8. 门窗生产工厂MES系统,功能需求说明文档

    1.概述 该系统针对门窗生产工厂,对门窗生产的产线进行管理和控制. 工厂生产的窗户,用于商业大楼,每次的生产安排按项目进行组织.一个项目会是某个大厦的很多窗户,比如有18层楼,有东南西北4个面,每个面 ...

  9. 企业招聘驱动的社会人才需求动态监测系统的设计文档(部分)

    目 录 1项目背景及整体方案... 1 1.1项目背景... 1 1.2整体方案分析... 1 1.2.1 系统上下文分析... 1 1.2.2项目用户分析... 1 1.2.3项目业务场景... 2 ...

最新文章

  1. 求排列的逆序数(分治)
  2. wamp php http 1.0500,HTTP 错误 500.0 - Internal Server Error C:\php-5.3.5\php.exe - FastCGI 进程意外退出...
  3. BootStrap-select插件动态添加option无法显示
  4. ansys参数化编程与命令手册_查看Bash手册--man命令
  5. STM32 的加密实现(转)
  6. 关于SafeMove White Paper功能
  7. 将JSON转成DataSet(DataTable)
  8. 莱比锡爆料:《星际争霸2》估计明年也没戏
  9. 训练神经网络的一些技巧(包括激活和损失函数的选择、调参、过拟合等)
  10. 5.3Python数据处理篇之Sympy系列(三)---简化操作
  11. 555定时器回差电压计算公式_555定时器及其应用
  12. 索引、分区和分桶的区别
  13. Oracle 官方文档地址
  14. html position属性作用,CSS学习之浅谈position属性
  15. 使用Fragstats对栅格数据进行分析
  16. 在线抓娃娃 html,萤石云开放平台提供在线抓娃娃解决方案
  17. ubuntu 下使用tar将文件夹(大文件)分包压缩
  18. 伊利诺伊计算机专业本科好入吗,伊利诺伊大学香槟分校本科有计算机专业吗?...
  19. 信息安全-网络安全风险评估技术原理与应用(一)
  20. v.douyin.com/xxx抖音网址官方生成制作抖音缩短口令网址php接口方法

热门文章

  1. 应用于BJ8F101(STM8S903)主控的2.4G标签
  2. 利用RNN神经网络自动生成唐诗宋词
  3. 查找Word文件中的中文字符
  4. 【FPGA学习笔记】(一)什么是FPGA?和单片机ARM有什么区别?
  5. 收购德邦,京东物流打的什么算盘?
  6. Spring源码解析十
  7. 第七回 嵌套结构逐层递进,逻辑运算先后有别
  8. Effective C++:改善程序与设计的55个具体做法
  9. 差分技术:LVDS(低压差分信号)、MLVDS(多点低压差分信号)的区别与应用场景
  10. STM32F103单片机详细介绍