springboot shiro权限管理【一】:随便扯扯大白话

用了shiro好多年了,今天这里做个详细的讲解,如有错误欢迎大家纠正

shiro简介

Apache Shiro是java的一个安全(权限)框架。

Shiro可以用在JavaSE和JavaEE环境。

Shiro可以进行认证、授权、加密、会话管理、集成web、缓存等等。

下载地址:http://shiro.apache.org/

功能简介

Authentication:身份认证/登录,验证用户是否拥有相应的身份

Authorization:授权,验证某个已认证的用户是否拥有某个权限,判断用户是否能进行什么操作

Session Manager:会话管理,用户登录后就是一次会话,在没有退出之前,所有信息都会存在会话中,可以是普通的javaSE环境,也可以是web环境

Cryptography:加密,保证数据的安全性,例如用户密码是加密方式存储到数据库

Web Support:web支持

Caching:缓存,可以存储用户登陆信息,提高效率

Concurrency:Shiro支持多线程应用的并发验证

Testing:提供测试支持

Run As:允许一个用户假装为另一个用户的身份进行访问(允许的条件下)

Remember me:记住我,你懂的

shiro架构

Subject:应用代码直接交互的对象,shiro的对外Api核心就是subject。Subject代表当前的任何交互的东西,与subject所有交互都会委托给SecurityManager(相当于正式的执行者)

SecurityManager:安全管理器,所有安全有关的操作都会与SecurityManager交互,并且管理这所有的subject,负责与Shiro的其他组件进行交互,相当于springmvc中的dispatcherServlet的角色

Realm:Shiro从Realm获取安全数据(如,用户,角色,权限),意思就是SecurityManager要验证用户身份,需要从Realm中获取相应的用户进行比较确认身份是否合法


猜你喜欢

转载自blog.csdn.net/kaola_l/article/details/80564505