日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

使用Spring Boot和Spring Security验证JWT

發布時間:2023/12/3 javascript 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Spring Boot和Spring Security验证JWT 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于我當前的項目,我將使用Spring Boot設置REST API (最有可能使用BoxFuse運行)。 為了能夠使用API??端點,應用程序將檢查傳入的請求是否具有較早提供的有效JWT令牌 (由我信任的API服務提供)。
為了實現此功能,我想利用Spring Security,因為它與Spring Boot非常吻合。 在搜尋有關此組合的信息時,我遇到了一個很好地描述背景信息的網站 ,但沒有提供使它運行所需的所有必要資源。 因此,經過更多調查和反復試驗后,我終于找到了一個可行的解決方案。 請注意,在我的情況下,我僅需要驗證傳入的令牌,而無需創建或提供新的令牌。

示例的源代碼可在此處在GitLab上找到。 該示例應用程序具有一個稱為MainController的REST控制器。 啟動應用程序后(通過運行Application .main方法),您可以使用以下地址訪問REST端點: http:// localhost:8888 / hello?name = PalmApps 。 如您所見,如果在瀏覽器中嘗試執行此操作,則會收到HTTP 401錯誤:

要訪問端點,您將需要提供JWT令牌,以便可以通過JwtAuthenticationFilter進行訪問 。 要生成有效令牌,請打開類JwtTokenGenerator的源并運行'main'方法,該方法將在控制臺中打印令牌:

復制令牌并打開一個工具,您可以使用該工具發送HTTP請求,并將令牌添加到標頭中,例如Postman :

有了令牌后,您將看到預期的輸出:

{"id": 2,"content": "Hello, PalmApps!" }

如果您通過POST請求訪問端點http:// localhost:8888 / me (仍帶有“ Authorization”標頭),則將以JSON格式獲取Principal對象的詳細信息:

{"details": null,"authorities": [{"authority": "admin"}],"authenticated": true,"principal": {"username": "Pascal","token": "eyJhbGciOiJIUzUxMeJ9.eyJzdwIiOi....m72LpFADA","authorities": [{"authority": "admin"}],"password": null},"credentials": null,"name": "Pascal" }

返回對象中的“主要”字段是我們的AuthenticatedUser 。 如果我們想從我們的JWT中獲取更多信息,那么我們可以簡單地將其添加到該對象中,并將其填充到JwtAuthenticationProvider中 。

翻譯自: https://www.javacodegeeks.com/2016/05/validating-jwt-spring-boot-spring-security.html

總結

以上是生活随笔為你收集整理的使用Spring Boot和Spring Security验证JWT的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。