Spring Cloud 鑒權 學習記錄
一、JWT
Json Web Token (JWT), 是為了在網絡應用環境間傳遞聲明而執行的一種基於JSON的開放標准(RFC 7519)。
該token被設計為緊湊且安全的,特別適用於分布式站點的單點登錄(SSO)場景。
JWT的聲明一般被用來在身份提供者和服務提供者間傳遞被認證的用戶身份信息,以便於從資源服務器獲取資源,
也可以增加一些額外的其它業務邏輯所必須的聲明信息,該token也可直接被用於認證,也可被加密。
二、JWT 鑒權流程
1、客戶端請求網關方法獲取 token
2、客戶端將步驟1中獲取到的 token 值,添加到請求頭里,發起服務調用請求
3、網關攔截服務調用請求,解析 並 驗證 token
4、根據步驟3中驗證通過的用戶信息,獲取其權限列表
5、在調用真實服務前,校驗是是否有權限。
6、測試:使用 postman 或者其他 http 請求測試工具,添加請求頭 進行測試
舉例:
http://localhost:9001/CLIENT-SERVICE/accessProvider
參考資料:
Spring Cloud OAuth2 實現用戶認證及單點登錄
基於spring-security-oauth2實現oauth2
Spring Security OAuth2 開發指南中文版
Gateway中使用SpringSecurity進行網關鑒權與權限控制
Spring Cloud Alibaba實戰(六) - Gateway之鑒權、日志
sping cloud gateway集成spring security實現前后端分離模式下的后端微服務認證授權
Spring gateway配置Spring Security實現統一權限驗證與授權
Spring Cloud Gateway及Security認證
SpringCloud初體驗:七、gateway 網關服務如何做token驗證
Spring Cloud Gateway + JWT 實現統一的認證授權
Spring cloud gateway+JWT+服務間鑒權實戰
微服務網關鑒權——gateway使用、網關限流使用、用戶密碼加密、JWT鑒權