前言
本文主要是记录自己学习Shiro框架的过程以及内容心得等,防止自己忘记。
什么是Shiro?
Shiro是一个强大的轻量级Java安全框架,主要负责执行身份验证,授权,加密和会话管理。
主要架构
Shiro主要由三个核心组件构成:Subject
,SecurityManager
和Realm
,他们之间的关系大致如下图:
- Subject:指的是当前操作的用户,这里的用户包括用户、第三方进程等等。即为当前与系统交互的对象。Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。
- SecurityManager:即安全管理员,整个框架的核心。Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。
- Realm:用于Shiro与安全数据之间的桥梁。即当对用户在进行授权或认证的时候,Shiro会从Realm中查找用户及其权限信息等。