文章目录
Apache Shiro框架
1. 简单介绍一下Shiro 框架
Apache Shiro 是 Java 的一个安全框架。使用 shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE环境,也可以用在JavaEE 环境。
Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与Web 集成、缓存等。
三个核心组件:Subject, SecurityManager 和 Realms。
Subject
:即“当前操作用户”。但是,在 Shiro 中,Subject 这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途, 你可以把它认为是 Shiro 的“用户”概念。
Subject 代表了当前用户的安全操作,SecurityManager 则管理所有用户的安全操作。
SecurityManager
:它是 Shiro 框架的核心,典型的 Facade 模式,Shiro 通过 SecurityManager 来管理内部组件实例,并通过它来提供安全管理的各种服务。
Realm
: Realm 充当了 Shiro 与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro 会从应用配置的Realm 中查找用户及其权限信息。
@RequestMapping(path = "/login-shiro",method = {
RequestMethod.POST,RequestMethod.GET})
public String loginShiro(String email,String password){
--- //1:先获取subject 表示对securitymanager连接
//2:调用 securitymanager
//3:再调用realm --------
//根据 email查询对应的用户
l.info("loginShiro email " + email