圖解Jwt和shiro認證方式的區別
Jwt的認證方式
使用者進行登入中,訪問微服務中Controller層的登入方法,若認證通過,生成Token(包含使用者資料和許可權),返回token資訊到前端瀏覽器,然後,前端那邊的程式碼會記錄token,使得再去訪問微服務的方法時,請求頭都會包含token,然後,後端會解析token,校驗token和操作許可權,值得注意的是整個過程都不記錄使用者的任何資料,是一個無狀態的服務!
shiro的認證方式
使用者登入後,交給後端自定義的Realm域,進行使用者名稱和密碼的認證比較,認證通過會產生一個以SessionId為key的使用者安全資料,然後交給shiro的會話管理,將SessionId存入Redis服務,並將SessionId返回到前端,如果再訪問其他後端的控制層方法時,請求頭就會包含sessionId,然後再交給後端自定義的Realm域獲取安全資訊,再交給會話管理將傳遞過來SessionId與redis服務進行比較,返回自己構造的安全資料(安全資料一定要包含許可權資訊),因為需要對使用者許可權進行驗證,如果訪問請求沒有攜帶sessionId,那麼會產生一個新的sessionId,但還需要使用者登入
相關文章
- 瞭解JWT認證JWT
- Basic認證和Bearer Token認證的區別
- 關於shiro安全框架和shiro的認證流程框架
- drf的JWT認證JWT
- shiro授權和認證(四)
- JWT 多表認證JWT
- DRF JWT認證(一)JWT
- DRF JWT認證(二)JWT
- DRF之JWT認證JWT
- Shiro中principal和credential的區別
- JWT身份認證(附帶原始碼講解)JWT原始碼
- 系統登入認證流程對比(cookie方式與jwt)CookieJWT
- [翻譯-Shiro]-Apache Shiro Java認證指南ApacheJava
- Shiro實現Basic認證
- 『JWT』,你必須瞭解的認證登入方案JWT
- koa 實現 jwt 認證JWT
- Django(65)jwt認證原理DjangoJWT
- ILSSI認證和一般的證書有什麼區別?
- 福祿克的驗證測試和認證測試的區別
- Shiro(認證的執行流程Authentication)
- Lumen 8.0 使用 Jwt 認證的 ApiJWTAPI
- 一文搞懂Session和JWT登入認證SessionJWT
- JWT技術解決IM系統的認證痛點JWT
- 選擇檢測機構,有CNAS認證和沒CNAS認證的區別
- Spring Boot 最簡單整合 Shiro+JWT 方式Spring BootJWT
- ICP證和EDI證的區別
- 【登陸認證】oracle的作業系統認證和口令檔案認證方式(轉載)Oracle作業系統
- 解決 Laravel JWT 多表認證時獲取不到當前認證使用者的問題LaravelJWT
- ASP.NET Core 6.0 新增 JWT 認證和授權ASP.NETJWT
- EMQX Cloud 更新:新增 Redis 和 JWT 外部認證授權MQCloudRedisJWT
- Shiro學習-認證思路分析(七)
- 前端架構之node jwt認證前端架構JWT
- drf JWT認證模組與自定製JWT
- 使用 JWT 認證使用者身份JWT
- laravel 介面使用JWT(dingo)認證LaravelJWTGo
- JWT登入認證-專案BotBattleJWTBAT
- .net core webapi jwt 更為清爽的認證WebAPIJWT
- SpringBoot 與Shiro 整合系列(三)多Realm驗證和認證策略Spring Boot