Demo 地址:https://github.com/Snailclimb/spring-security-jwt-guide 。歡迎 star!
Spring Security 是Spring 全家桶中非常強(qiáng)大的一個(gè)用來(lái)做身份驗(yàn)證以及權(quán)限控制的框架,我們可以輕松地?cái)U(kuò)展它來(lái)滿足我們當(dāng)前系統(tǒng)安全性這方面的需求。
但是 Spring Security 相比于其他一些技術(shù)比如 JPA 來(lái)說(shuō)更難上手,很多人初學(xué)的時(shí)候很難通過(guò)看視頻或者文檔發(fā)就很快能獨(dú)立寫一個(gè) Demo 出來(lái),于是后面可能就放棄了學(xué)習(xí)這個(gè)東西。
剛來(lái)公司的時(shí)候的入職培訓(xùn)實(shí)戰(zhàn)項(xiàng)目以及現(xiàn)在正在做的項(xiàng)目都用到了 Spring Security 這個(gè)強(qiáng)大的安全驗(yàn)證框架,可以看出這個(gè)框架在身份驗(yàn)證以及權(quán)限驗(yàn)證領(lǐng)域可以說(shuō)應(yīng)該是比較不錯(cuò)的選擇。由于之前經(jīng)歷項(xiàng)目的這部分模塊都不是自己做的,所以對(duì)于 Spring Security 并不是太熟悉。于是自己抽時(shí)間對(duì)這部分知識(shí)學(xué)習(xí)了一下,并實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的 Demo 。這個(gè) Demo 主要用到了Spring Security和 Spring Boot這兩門技術(shù),并且所有的依賴采用的都是最新的穩(wěn)定版本。初次之外,這個(gè)項(xiàng)目還用到了 JPA這門技術(shù)。項(xiàng)目代碼結(jié)構(gòu)如下(chrome插件:octree),整體還是比較清晰的,由于自己的能力以及時(shí)間有限,所以一定還有很多可以優(yōu)化的地方,有興趣的朋友可以一起完善,期待你的 PR。Demo 地址:https://github.com/Snailclimb/spring-security-jwt-guide。

下載配置
- git clone https://github.com/Snailclimb/spring-security-jwt-guide.git
- 打開(kāi)項(xiàng)目并且等待Maven下載好相關(guān)依賴。建議使用idea 打開(kāi),并確保你的idea 下載了 lombok插件。
- 修改
application.properties將數(shù)據(jù)庫(kù)連接信息改成你自己的。
示例
1.注冊(cè)一個(gè)賬號(hào)

2.登錄

3.使用正確Token訪問(wèn)需要進(jìn)行身份驗(yàn)證的資源

4.不帶Token訪問(wèn)需要進(jìn)行身份驗(yàn)證的資源

5.使用不正確Token訪問(wèn)需要進(jìn)行身份驗(yàn)證的資源

公眾號(hào)
如果大家想要實(shí)時(shí)關(guān)注我更新的文章以及分享的干貨的話,可以關(guān)注我的公眾號(hào)。
《Java面試突擊》: 由本文檔衍生的專為面試而生的《Java面試突擊》V2.0 PDF 版本公眾號(hào)后臺(tái)回復(fù) "Java面試突擊" 即可免費(fèi)領(lǐng)?。?/p>
Java工程師必備學(xué)習(xí)資源: 一些Java工程師常用學(xué)習(xí)資源公眾號(hào)后臺(tái)回復(fù)關(guān)鍵字 “1” 即可免費(fèi)無(wú)套路獲取。
