三.Apache Shiro 安全框架

三.Apache Shiro 安全框架Shiro 安全框架简介 Shiro 概述 Shiro 是 apache 旗下一个开源安全框架 它对软件系统中的安全认证相关功能进行了抽封装 实现了用户身份认证 权限授权 加密 会话管理等功能 组成了一个通用的安全认证框架 使用 shiro 就可以非常快速的完成认证 授权等功能的开发 降低系统成本

大家好,我是讯享网,很高兴认识大家。

Shiro安全框架简介

Shiro概述

Shiro是apache旗下一个开源安全框架,它对软件系统中的安全认证相关功能进行了抽封装,实现了用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。使用shiro就可以非常快速的完成认证、授权等功能的开发,降低系统成本。
用户在进行资源访问时,要求系统要对用户进行权限控制,其具体流程如图所示:
在这里插入图片描述
讯享网

Shiro概要架构

在概念层面,Shiro 架构包含三个主要的理念,如图所示:
在这里插入图片描述
其中:

  1. Subject :主体对象,负责提交用户认证和授权信息。
  2. SecurityManager:安全管理器,负责认证,授权等业务实现。
  3. Realm:领域对象,负责从数据层获取业务数据。

Shiro详细架构

Shiro框架进行权限管理时,要涉及到的一些核心对象,主要包括:认证管理对象,授权管理对象,会话管理对象,缓存管理对象,加密管理对象以及Realm管理对象(领域对象:负责处理认证和授权领域的数据访问题)等,其具体架构如图-6所示:
在这里插入图片描述
其中:

  1. Subject(主体):与软件交互的一个特定的实体(用户、第三方服务等)。
  2. SecurityManager(安全管理器) :Shiro 的核心,用来协调管理组件工作。
  3. Authenticator(认证管理器):负责执行认证操作。
  4. Authorizer(授权管理器):负责授权检测。
  5. SessionManager(会话管理):负责创建并管理用户 Session 生命周期,提供一个强有力的 Session 体验。
  6. SessionDAO:代表 SessionManager 执行 Session 持久(CRUD)动作,它允许任何存储的数据挂接到 session 管理基础上。
  7. CacheManager(缓存管理器):提供创建缓存实例和管理缓存生命周期的功能。
  8. Cryptography(加密管理器):提供了加密方式的设计及管理。
  9. Realms(领域对象):是shiro和你的应用程序安全数据之间的桥梁。

Shiro框架认证拦截实现

添加shiro依赖

使用spring整合shiro时,需要在pom.xml中添加如下依赖(参考官网http://shiro.apache.org/spring-boot.html),假如项目中添加过shiro-spring依赖,将shiro-spring依赖替换掉即可。代码如下:

<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring-boot-web-starter</artifactId> <version>1.7.0</version> </dependency> 

讯享网
小讯
上一篇 2025-02-23 22:26
下一篇 2025-03-11 11:38

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/52173.html