问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

shiro原理

发布网友 发布时间:2023-02-17 01:43

我来回答

1个回答

热心网友 时间:2023-05-10 23:59

Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能,是目前用得比较多的登陆框架。

1、应用程序构建了一个终端用户认证信息的AuthenticationToken 实例后,调用Subject.login方法。

2、Sbuject的实例通常是DelegatingSubject类(或子类)的实例对象,在认证开始时,会委托应用程序设置的securityManager实例调用securityManager.login(token)方法。

3、SecurityManager接受到token(令牌)信息后会委托内置的Authenticator的实例(通常都是MolarRealmAuthenticator类的实例)调用authenticator.authenticate(token). MolarRealmAuthenticator在认证过程中会对设置的一个或多个Realm实例进行适配,它实际上为Shiro提供了一个可拔插的认证机制。

4、如果在应用程序中配置了多个Realm,MolarRealmAuthenticator会根据配置的AuthenticationStrategy(认证策略)来进行多Realm的认证过程。在Realm被调用后,AuthenticationStrategy将对每一个Realm的结果作出响应。

注:如果应用程序中仅配置了一个Realm,Realm将被直接调用而无需再配置认证策略。

5、判断每一个Realm是否支持提交的token,如果支持,Realm将调用getAuthenticationInfo(token); getAuthenticationInfo 方法就是实际认证处理,我们通过覆盖Realm的doGetAuthenticationInfo方法来编写我们自定义的认证处理。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
茶叶可以放在冰箱里吗茶叶能不能放冰箱 茶叶放冰箱里好吗茶叶放冰箱里好不好 茶叶可以放冰箱保存么 茶叶放冰箱放冷藏好吗 甲、乙两根绳子/,甲绳长63米,乙绳长29米、两根绳子前去同样的长度)剩下... 新华书店在送图书下乡活动中,送去的连环画战50%,余下的是故事书,故事书... 李老师带了300元钱去新华书店为学校图书室买《现代汉语词典》38.50.他... dnf55传承重甲套多少钱 dnf漫游55传承套叫什么名字 Dnf刺客五十五级刷图传承套多少钱?叫什么名字? DNF55级传承皮甲套多少钱,每个部位价格分别是多少,20分 php课程都学些什么,需要学的课程是什么呀 黑海会员有什么特权呢? 我国自主研制的长征四号什么运载 我国自行研制的大型运载火箭系列的名称是什么 同一个可以同时在两个手机上登录吗 一个可以同时用两部手机登陆吗 一个可以在两部手机同时登陆吗? 两部手机能同时登录一个吗? 书信满分作文 可以不绑定手机号码吗 不绑定手机号可以吗 可以不绑定手机吗? 被搜索状态异常无法显示是怎么回事?有解决办法么? 泡完水的红枣还有营养吗 如何在手机上申请第二个 怎么申请 第二个 怎么申请第二个 注册怎么注册第二个 怎么申请第二个 我一直都不知道我的被封过今天给别人解封说我的被封过,谁知道怎样查看微信有没有被封过?谢 上海律师会见在押犯罪嫌疑人专用介绍信 律师会见需要提交的材料 法援看守所会见需要材料有哪些 会见犯罪嫌疑人需要提供的手续 绿豆汤要煮多少分钟 绿豆汤水和绿豆的比例是多少 红米k40怎么设置三段 上怎样设置备注和标签及电话号码? 红米k40主摄型号 大学生实习可以签劳动合同吗 我的进群时说违规怎么处理 看网络小说是丢脸吗 蒸去皮绿豆是用大火还是小火好 使用shadowofthesun会有版权问题吗 平凡之路remix酷狗怎么找不到了 逻辑错误是什么意思 微信视频号在哪里?微信视频号介绍 带us字母的小米手环是几 小米今日发布新品:小米5没戏 会不会是小米手环2 怎么样洗草莓洗的干净 森林里的鸟有哪些?