Springboot整合JWT做登入攔截

2021-08-24 23:17:56 字數 2816 閱讀 9032

為什麼需要jwt

在傳統的 session 驗證中,服務端必須儲存 session id,用於與使用者傳過來的 cookie 驗證。而在一開始儲存 session id 時, 只會儲存在一台伺服器上,所以只能由乙個 server 應答,就算其他伺服器有空閒也無法應答,因此也利用不到分布式伺服器的優點。

而 jwt 依賴的是在客戶端本地儲存驗證資訊,不需要利用伺服器儲存的資訊來驗證,所以任意一台伺服器都可以應答,伺服器的資源也被較好地利用。

jwt介紹

jwt官網

spring整合jwt

io.jsonwebtoken

//spring***載入在springcontenttext之前,所以這裡用@bean提前載入。否則會導致過濾器中的@autowired注入為空

@override

public

void

addinterceptors(interceptorregistry registry)

}

string jwttoken = jwthelper.createjwt(admin.getadminusername(), admin.getadminid(), audience.getclientid(),

audience.getname(), audience.getexpiressecond()*1000, audience.getbase64secret());

jwttoken = "bearer;" + jwttoken;

public

class

jwthelper catch (exception e)

}/**

**@param name

*@param userid

*@param audience

*@param issuer

*@param ttlmillis

*@param base64security

*@return

*/public

static string createjwt(string name, integer userid,

string audience, string issuer, long ttlmillis, string base64security)

//生成jwt

return builder.compact();

}}

jwt配置教程

SpringBoot 使用jwt進行身份驗證

這裡只供參考,比較使用jwt方式進行身份驗證感覺不好,最不行的就是不能退出 登陸時設定多長過期時間,只能等這個時間過了以後才算退出,服務端只能驗證請求過來的token是否通過驗證 code created by qhong on 2018 6 7 15 34 標註該註解的,就不需要登入 target...

springBoot整合dubbo整合專案

傳統spring 整合dubbo,需要繁瑣的編寫一堆堆的 xml 配置檔案 而springboot整合dubbo後,不在需要寫 xml,通過jar包引用,完 成整合,通過註解的形式完成配置。提高我們的開發效率 目錄結構 1 服務層生產者開發 hs ldm server service 1.1新增du...

SpringBoot整合系列 整合Swagger2

io.springfox springfox swagger2 2.7.0 io.springfox springfox swagger ui 2.7.0 一般無配置項,必要時可以新增自定義配置項,在配置類中讀取 swagger2的配置內容僅僅就是需要建立乙個docket例項 configurati...