单点登录与权限管理本质:权限管理介绍

本文介绍了权限管理的一般模型,包括用户登录后的权限验证过程、控制粒度和验证位置。详细讲解了Apache Shiro框架的基本架构,如何与权限管理模型对应,并强调了Shiro在权限验证、Session管理和缓存支持上的作用。文章还讨论了权限验证的前端和后端控制,以及Shiro组件间的交互,为实现单点登录和权限管理提供了理论基础。
摘要由CSDN通过智能技术生成

前面几篇文章介绍了单点登录的本质,包括cookie、session、重定向的基本概念,单点登录的基本交互流程,cookie的重要性和安全问题。单点登录能够确保:必须通过身份验证后,才能访问网站,且访问多个系统时,只需要登录一次。

该系列的完整写作计划,可见:系列概述

一般系统都会有多个角色,不同角色可访问的系统功能不同,通过给用户分配不同角色,决定用户可访问的系统功能。

继续介绍「单点登录与权限管理」系列的第一部分:单点登录与权限管理本质,本篇说说权限管理,主要从以下几个方面介绍:

  • 权限管理的一般模型
  • 权限验证范围
  • Shiro基本架构和扩展点
  • 系列第一部分总结
权限管理的一般模型

权限验证的过程比较简单,描述如下:

  1. 用户登录成功后,会将自己的个人信息和权限信息,保存到session中,可以存储在内存、redis中;
  2. 用户访问其他页面时,会根据访问路径,与用户权限数据进行匹配,验证是否有权限访问;
  3. 如果有权限,显示访问页面,如果无权限,提示用户无权访问;

权限验证基本流程

如何管理和分配用户权限呢,一般会抽象出如下实体概念:

  1. 用户:访问系统的主体;
  2. 角色:分配权限的最小单元,通过角色给用户分配权限;
  3. 权限菜单:权限的最小单元,一个角色配置多个权限菜单;

权限管理实体

另外,为了方便权限管理,会单独抽取一个服务「用户中心」,统一管理用户、角色和各个系统的权限菜单。权限菜单由各个子系统同步到「用户中心」或者提供批量导入的功能,权限菜单标识的规则要提前约定好,一致的菜单标识有助于权限拦截的判断。

简单截取几个我们项目中的页面,加深

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值