shiro全面實戰教程 待完善

2021-10-09 11:05:44 字數 1435 閱讀 8201

基本概念略

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使用者認證 首先不管你做沒有做過許可權管理,如下圖你也是熟悉的。這個圖的流程很簡單,很直觀的看到許可權認證的流程走向。那麼上圖中...