权限管理解决方案

本文主要介绍权限管理的解决方法:

  • 粗颗粒度和细颗粒度
  • 基于url拦截
  • 使用权限管理框架

粗颗粒度和细颗粒度

什么是粗颗粒度和细颗粒度

在上一文中提到粗颗粒度和细颗粒度,但是没有细讲。
对资源类型的管理称为粗颗粒度权限管理,既只控制到菜单、按钮、方法,粗颗粒度的例子比如:用户具有用户管理的权限,具有导出订单的权限。对资源实例的控制称为细颗粒度权限管理,既控制到数据级别,比如:用户只允许查看本部门员工的信息,用户只允许导出自己创建的订单。

如何实现粗颗粒度和细颗粒度

对于粗颗粒度的权限管理可以很容易做到系统架构级别的功能,即系统功能操作使用统一的粗颗粒度的权限管理。
对于细颗粒度的权限管理不建议做成系统架构级别的功能,因为对数据级别的控制是系统的业务需求,随着业务需求的改变业务功能变化的可能性很大,建议对数据级别的权限控制在业务层个性化开发,比如:用户只允许修改自己创建的商品信息,可以在service接口添加校验实现,service接口需要传入当前操作人的标识,与商品创建人的标识对比,如果不一致则拒绝修改。

基于url拦截

基于url拦截是企业中常用的权限管理方法,实现思路是:将系统操作的每个url配置在权限表中,将权限对应到角色,将角色分配给用户,用户访问系统功能通过Filter进行过滤,Filter获取用户访问的url,只要访问的url是用户分配角色中的url则放行继续访问。
流程如下图:

使用权限管理框架

对于权限管理基本上每个系统都需要使用,使用权限管理框架完成权限管理功能的开发可以节省系统开发时间,并且权限管理框架提供了完善的认证和授权功能有利于系统扩展维护,但是学习权限管理框架是需要时间成本的,所以选择一款简单高效的权限管理框架非常重要,shiro权限管理框架就是我们选择的。

shiro权限框架详解02-权限理论介绍相关推荐

  1. (转)shiro权限框架详解02-权限理论介绍

    http://blog.csdn.net/facekbook/article/details/54893042 权限管理解决方案 本文主要介绍权限管理的解决方法: 粗颗粒度和细颗粒度 基于url拦截 ...

  2. (转)shiro权限框架详解01-权限理论介绍

    http://blog.csdn.net/facekbook/article/details/54890365 权限管理 本文介绍权限管理的理论和权限管理的一些名词. 介绍权限管理 理解身份认证和授权 ...

  3. (转) shiro权限框架详解06-shiro与web项目整合(上)

    http://blog.csdn.net/facekbook/article/details/54947730 shiro和web项目整合,实现类似真实项目的应用 本文中使用的项目架构是springM ...

  4. (转)shiro权限框架详解06-shiro与web项目整合(下)

    http://blog.csdn.net/facekbook/article/details/54962975 shiro和web项目整合,实现类似真实项目的应用 web项目中认证 web项目中授权 ...

  5. Shiro 安全框架 详解

    1.Shiro概述 1.1.Shiro简介 Apache Shiro是Java的一个安全(权限)框架. Shiro可以非常容易的开发出足够好的应用,不仅可以用在JavaSE环境,也可以用在JavaEE ...

  6. linux权限管理详解,linux权限管理详解-Go语言中文社区

    普通权限 -rw-r–r--. 1 root root 0 Feb 14 23:33 test 第1位标识文件类型: -:普通文件 b:块设备 c:字符设备 d:目录 l:符号链接 s:套接字文件 p ...

  7. (转)shiro权限框架详解03-shiro介绍

    http://blog.csdn.net/facekbook/article/details/54893740 shiro介绍 本文正式进入主题.本文将介绍如下内容: 什么是shiro 为什么需要学习 ...

  8. (转)shiro权限框架详解05-shiro授权

    http://blog.csdn.net/facekbook/article/details/54910606 本文介绍 授权流程 授权方式 授权测试 自定义授权realm 授权流程 开始构造Secu ...

  9. (转) shiro权限框架详解04-shiro认证

    http://blog.csdn.net/facekbook/article/details/54906635 shiro认证 本文介绍shiro的认证功能 认证流程 入门程序(用户登录和退出) 自定 ...

最新文章

  1. Deeplearning.ai深度学习课程笔记-在线版
  2. python的requests模块功能_python中requests模块的使用方法
  3. Qt学习之路(37): Qt容器类之关联存储容器
  4. Android消息推送(Android Push Notification)
  5. 行军导航过程中导向箭头
  6. tcs标准编写软件_tcs2010下载-tcs2010(中国标准编写模板) 免费版 - 河东下载站
  7. 读《我的成功为什么可以复制》——唐骏
  8. matlab魔方矩阵有哪些,关于matlab 魔方矩阵的1、用前100个自然数创建一个10阶的魔方矩阵,求出每行、每列、所有对角线元素的和,再将矩阵...
  9. 加拿大女王大学计算机排名,加拿大女王大学排名世界排名是第几
  10. 苹果8a1660是什么版本_苹果a1780是什么版本
  11. Blender程序化建模教程【Python】
  12. Coursera奖学金申请模板
  13. 西北大学计算机系房教授,西北大学段清波院长的秦陵尘封的帝国有人看过吗?...
  14. 数字孪生开启传统行业数字化转型升级之路
  15. 书架html特效代码,原生JS写的一个书架式的图片缩放滚动展示特效代码
  16. 【转租】【房东直租】【次渠东里一区、高层正规两居室、次卧】
  17. SpringBoot 博客开发 个人学习(项目开始和前端页面)
  18. 滤波器相关知识(更新中)
  19. 【机器人学】冗余七自由度机械臂的解析解逆解算法
  20. win7快捷键_?如何用U盘安装win7系统?

热门文章

  1. 用java编写日历_如何用Java制作一个简易日历
  2. 没有人能够随随便便成功
  3. 「主数据架构」介绍下一代主数据管理(MDM)
  4. SpringSecurity密码加密存储
  5. 同步传输与异步传输区别
  6. ios专题 - 斯坦福大学iOS开发公开课总结
  7. 在html中做产品介绍页面,电商网站的产品介绍怎么写,有哪些方法?
  8. 羽毛球双打战术和意识分析
  9. 【系统分析师】一、绪论
  10. revit二次开发 创建图纸图框,视图放到图框中心点位置