shiroday1

1、shiro安全框架可以用来干嘛

验证用户身份
用户访问权限控制,比如:1、判断用户是否分配了一定的安全角色。2、判断用户是否被授予完成某个操作的权限
在非 Web 或 EJB 容器的环境下可以任意使用Session API
可以响应认证、访问控制,或者 Session 生命周期中发生的事件
可将一个或以上用户安全数据源数据组合成一个复合的用户 “view”(视图)
支持单点登录(SSO)功能
支持提供“Remember Me”服务,获取用户关联信息而无需登录

2、流程图

 

 3、源码解析:

1)登录token的时候会选择一个realms

 

2)根据token去缓存中查找有没有认证信息,有的话直接返回info,但还是得比较(密码信息)凭证

 

 

 3)通过hashmap存放ini文件里的账号

 

 4、读写锁通过token里面账号去获取

 

 5、如果info为空抛出 UnknownAccountException(msg)

 

 6、如果账号正确,开始验证密码

 

 7、如果密码不正确,抛出IncorrectCredentialsException(msg)

 

posted @ 2021-06-27 20:09  傲云萧雨  阅读(22)  评论(0编辑  收藏  举报