基本概念略
1.1shiro中認證的關鍵物件
subject:主體
訪問系統的使用者,主體可以是使用者、程式等,進行認證的均稱之為主體
principal:身份資訊
是主體(subject)進行身份認證的標識,標識必須具有唯一性,如使用者名稱、手機號、郵箱等,乙個主體可以有多個身份,但是必須有乙個主身份(primary principal)。
credential:憑證資訊
是只有主體自己知道的安全資訊,如密碼,證書等。
1.2認證流程
作用:一般用來加密或者簽名
特點:md5演算法不可逆,如果內容相同無論執行多少次md5生成的結果都是相同的
注意:在使用md5hash的時候不要使用它的set方法進行加密,而是使用構造方法
@springboottest
@runwith
(springjunit4classrunner.
class
)public
class
testshiromd5
@test
public
void
tes***5slathash()
@test
public
void
tes***5slat()
}
二、shiro中的授權
2.1授權
授權,即訪問控制,控制誰能訪問哪些資源。主體進行身份認證後需要分配許可權方式可訪問系統的資源,對於某些某些資源沒有許可權訪問的。
2.2關鍵物件
授權可以簡單理解為誰(who)對什麼(what)進行了怎樣(how)的操作
who,即主體(subject),主體需要訪問系統中的資源。
what,即資源(resource),如選單、頁面、按鈕、類方法、系統商品資訊。資源包括資源型別和資源例項,比如商品資訊為資源資訊,型別為t01的商品為資源例項,編號為001的商品資訊也屬於資源例項。
how,許可權許可(permission),規定了主體對資源的操作許可,許可權離開資源沒有意義,如使用者查詢許可權、使用者新增許可權、某個類方法的呼叫許可權、編號為001使用者的修改許可權等,通過許可權可知主體對哪些資源都有哪些操作許可。
2.3授權流程
2.4授權方式
2.5許可權字串
規則:資源識別符號:操作:資源例項識別符號
意思就是:對哪個資源的哪個例項具有什麼操作,":"是資源/操作/例項的分隔符,許可權字串也可以使用*萬用字元
3、springboot整合shiro
3.1整合思路
Shiro實戰(三)Shiro授權(上)
在上篇shiro認證原理的最後,我們介紹了inirealm是如何進行認證,本篇我們將介紹shiro授權過程中的幾個概念以及shiro程式設計式的授權操作,並通過常用的使用者 角色 許可權授權模式來加深理解授權的過程。1 授權三大要素 permissions permissions是shiro安全框架...
Spring Boot整合Shiro實戰
spring boot整合shiro許可權驗證框架,可參考 org.apache.shirogroupid shiro spring boot web starterartifactid 1.4.0version dependency shiroconfig configurationpropert...
shiro 初級教程
首先 看不懂多看幾次,我已經把我學習的精華寫出來了 什麼許可權管理,我認為大概包括使用者認證與使用者授權。只要用使用者的系統,都會存在許可權管理。二 許可權管理基礎 2.1使用者認證 首先不管你做沒有做過許可權管理,如下圖你也是熟悉的。這個圖的流程很簡單,很直觀的看到許可權認證的流程走向。那麼上圖中...