MYshiro

(1)使用用戶的登錄信息創(chuàng)建令牌

UsernamePasswordToken token = new UsernamePasswordToken(username, password);

token可以理解為用戶令牌,登錄的過程被抽象為Shiro驗(yàn)證令牌是否具有合法身份以及相關(guān)權(quán)限。

(2)執(zhí)行登陸動作

SecurityUtils.setSecurityManager(securityManager); // 注入SecurityManager
Subject subject = SecurityUtils.getSubject(); // 獲取Subject單例對象
subject.login(token); // 登陸

Shiro的核心部分是SecurityManager,它負(fù)責(zé)安全認(rèn)證與授權(quán)。Shiro本身已經(jīng)實(shí)現(xiàn)了所有的細(xì)節(jié),用戶可以完全把它當(dāng)做一個黑盒來使用。SecurityUtils對象,本質(zhì)上就是一個工廠類似Spring中的ApplicationContext。Subject可以為user?線程等。它是你目前所設(shè)計的需要通過Shiro保護(hù)的項目的一個抽象概念。通過令牌(token)與項目(subject)的登陸(login)關(guān)系,Shiro保證了項目整體的安全。

(3)判斷用戶

Shiro本身無法知道所持有令牌的用戶是否合法,除了實(shí)現(xiàn)人員沒有人知道。因此Realm我們自行實(shí)現(xiàn)的模塊。

(4)權(quán)限校驗(yàn)

AuthenticationInfo代表了用戶的角色信息集合,AuthorizationInfo代表了角色的權(quán)限信息集合這個根據(jù)項目講解

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、架構(gòu) 要學(xué)習(xí)如何使用Shiro必須先從它的架構(gòu)談起,作為一款安全框架Shiro的設(shè)計相當(dāng)精妙。Shiro的應(yīng)用...
    ITsupuerlady閱讀 3,617評論 4 32
  • 構(gòu)建用戶管理微服務(wù)翻譯自:https://springuni.com 構(gòu)建用戶管理微服務(wù)(一):定義領(lǐng)域模型和 R...
    極樂君閱讀 1,670評論 0 10
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評論 19 139
  • 我一直都有讀書的習(xí)慣,但也并不是每天都看書,看過《書都不會讀,你還想成功后》,便給自己定下了100天讀33本書的計...
    蘭玨與宣閱讀 325評論 1 2
  • 昨天,有位播音問我,他拿到一篇文章,里面是兩個人的對話。 張三:xxxxxxxxxxxxxxxxxxxxxxxxx...
    朗讀者晟煥閱讀 825評論 0 0

友情鏈接更多精彩內(nèi)容