shiro+springboot分析思路
文章目錄
- 前言
- 一、為什么要使用shiro
- 二、使用步驟
- 1.如何認證和授權(quán)
- 2.如何獲取數(shù)據(jù)
- 總結(jié)
前言
shiro和spring security等安全框架可以用戶管理和權(quán)限認證
一、為什么要使用shiro
我們以前在不適用shiro框架之前,比如一個web項目,我們是怎么實現(xiàn)權(quán)限判斷的呢?
首先訪問login.jsp或者login.html登錄頁面
我們只是通過用戶登錄的用戶名和密碼進行判斷,看是否和數(shù)據(jù)庫中保存的數(shù)據(jù)一致,如果一致就能看到主頁面,這最多是實現(xiàn)了用戶的認證,對于授權(quán)無法進行實現(xiàn)
而如果我們想要使用授權(quán)等更為安全的操作,就得使用安全框架了,比如shiro和spring security;那我們怎么完成授權(quán)得操作呢?
我們可以在用戶認證成功之后,會登錄到主頁面;首先我們應(yīng)該攔截用戶所有的請求,然后進行shiro授權(quán)操作,如果有該權(quán)限就允許通過,否則不通過;這時我們就可以想到Java中的攔截器了,沒錯,這正是使用了攔截器,在攔截器中進行shiro授權(quán)操作;肯定是使用shiro中的攔截器;而此時,ShiroFilter主要完成用戶認證和授權(quán)的功能
以上內(nèi)容均屬個人看法,如果存在很多問題望見諒,本博客只是為了記錄自己得學習過程,理清自己得技術(shù)點思路
二、使用步驟
1.如何認證和授權(quán)
通過學習shiro的基礎(chǔ)認證和授權(quán),可以得出,shiro的認證和授權(quán)是在Security Manager(安全管理器)中進行操作的,所以需要在ShiroFilter中調(diào)用Security Manager
2.如何獲取數(shù)據(jù)
上面說通過Security Manager安全管理器進行授權(quán)和認證,但是怎么獲取數(shù)據(jù)呢,沒錯就是Realm;我們知道realm相當于一個DAO,里面封裝了數(shù)據(jù)操作的具體細節(jié);所以需要使用Security Manager調(diào)用Realm
總結(jié)
springboot整合shiro流程
1.創(chuàng)建一個spring boot應(yīng)用
2.確定受限資源和公共資源
3.在springboot配置一個ShiroFilter攔截器
4.攔截請求
5.在ShiroFilter中調(diào)用Security Manager,然后Security Manager調(diào)用Realm獲取數(shù)據(jù)完成用戶認證操作
6.Security Manager調(diào)用Realm獲取數(shù)據(jù)完成授權(quán)
以上內(nèi)容均屬個人看法,如果存在很多問題望見諒,本博客只是為了記錄自己得學習過程,理清自己得技術(shù)點思路
總結(jié)
以上是生活随笔為你收集整理的shiro+springboot分析思路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: shiro认证+授权(使用MD5+sal
- 下一篇: Shiro+springboot+myb