欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

什么是JWT超詳細講解

 更新時間:2022年12月08日 14:24:35   作者:老馬-Max  
JWT(json?web?token),它并不是一個具體的技術(shù)實現(xiàn),而更像是一種標準,這篇文章主要介紹了什么是JWT及一些基本知識,需要的朋友可以參考下

什么是JWT?

JWT(json web token),它并不是一個具體的技術(shù)實現(xiàn),而更像是一種標準。

Json web token (JWT), 是為了在網(wǎng)絡(luò)應(yīng)用環(huán)境間傳遞聲明而執(zhí)行的一種基于JSON的開放標準.該token被設(shè)計為緊湊且安全的,特別適用于分布式站點的單點登錄(SSO)場景。JWT的聲明一般被用來在身份提供者和服務(wù)提供者間傳遞被認證的用戶身份信息,以便于從資源服務(wù)器獲取資源,也可以增加一些額外的其它業(yè)務(wù)邏輯所必須的聲明信息,該token也可直接被用于認證,也可被加密。

JWT規(guī)定了數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu),一串完整的JWT由三段落組成,每個段落用英文句號連接(.)連接,他們分別是:Header、Payload、Signature,所以,常規(guī)的JWT內(nèi)容格式是這樣的:AAA.BBB.CCC

并且,這一串內(nèi)容會base64加密;也就是說base64解碼就可以看到實際傳輸?shù)膬?nèi)容。接下來解釋一下這些內(nèi)容都有什么作用。

Header

Header包含加密的方式、type,比如:

Payload

然后我們來看BBB代表的Payload:

顧名思義,這里就會包含實際傳遞的參數(shù)內(nèi)容,比如:

記住,在這里不要傳遞那些很敏感的數(shù)據(jù),因為只要base64解碼就可以看到,除非你還額外加密一層。

Signature

最后一部分是CCC代表的Signature,當然也是字面意思——簽名,base64解碼后,是這個樣子:

它主要決定了Header、Payload有沒有被人篡改;如果內(nèi)容被篡改,那么這條JWT將會被視為無效。

如何工作

那么,一串JWT如何發(fā)揮它的作用呢?正常來說,每一次請求都像圖里這樣就傳入就可以了。

記住內(nèi)容前面的“Bearer”是固定的,并且還得多加一個空格做分割。

應(yīng)用場景

基本上絕大部分的人都用JWT做登錄授權(quán),它相比原先的session、cookie來說,更快更安全,跨域也不再是問題,更關(guān)鍵的是更加優(yōu)雅~

當然它也可以用來傳遞數(shù)據(jù),只不過我個人覺得做傳輸不太好用(實際上我想市場也這么覺得),原因幾點:

1、如果是公開展示數(shù)據(jù)的話,我何必先加簽才返回呢?

2、如果是私密數(shù)據(jù)的話,人家base64解碼就能看到,不合適吧?即便我把payload內(nèi)容加密,可這樣一來就加密好幾次了,我直接用別的加密手段它不香么?

或許是目前的業(yè)務(wù)需求并沒有很契合,童鞋們遇到了可以一起討論下。

最后

JWT大概是和 .Net Core 一起進入我視野的,它相對輕便、優(yōu)雅,對服務(wù)器基本沒依賴,所以我基本所有項目的登錄授權(quán)都在用它。用它這么久了還沒仔細梳理下,所以今天抽時間寫一篇。沒有翻查什么文獻,也沒有很高大上的詞綴,就是單純以我的角度闡述我對它的認識?;仡^再補一篇JWT在.Net Core的實現(xiàn)。

到此這篇關(guān)于什么是JWT超詳細講解的文章就介紹到這了,更多相關(guān)JWT是什么內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用chrome控制臺作為.Net的日志查看器

    使用chrome控制臺作為.Net的日志查看器

    這篇文章介紹了使用chrome控制臺作為.Net日志查看器的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • 建立自己的RSS

    建立自己的RSS

    建立自己的RSS...
    2006-09-09
  • 聊一聊Asp.net過濾器Filter那一些事

    聊一聊Asp.net過濾器Filter那一些事

    這篇文章主要介紹了聊一聊Asp.net過濾器Filter那一些事,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-06-06
  • MVC生成頁碼選擇器返回HTML代碼詳解

    MVC生成頁碼選擇器返回HTML代碼詳解

    這篇文章主要為大家詳細介紹了MVC生成頁碼選擇器返回HTML代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • ASP.NET獲取各級目錄Server.MapPath詳解全

    ASP.NET獲取各級目錄Server.MapPath詳解全

    ASP.NET獲取各級目錄Server.MapPath詳解全,需要的朋友可以參考下。
    2011-12-12
  • vs2015中mysql.h文件打不開的解決辦法

    vs2015中mysql.h文件打不開的解決辦法

    這篇文章主要為大家詳細介紹了vs2015中mysql.h文件打不開的解決辦法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • asp.net微信開發(fā)(永久素材管理)

    asp.net微信開發(fā)(永久素材管理)

    這篇文章主要介紹了asp.net微信開發(fā)中有關(guān)永久素材管理的相關(guān)內(nèi)容,需要的朋友可以參考下
    2015-11-11
  • ASP.NET MVC格式化日期

    ASP.NET MVC格式化日期

    這篇文章介紹了ASP.NET MVC格式化日期的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • ASP.NET 定時器回調(diào)方法的重入

    ASP.NET 定時器回調(diào)方法的重入

    本文主要介紹了ASP.NET 定時器回調(diào)方法的重入的相關(guān)知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • ASP.NET?MVC擴展帶驗證的單選按鈕

    ASP.NET?MVC擴展帶驗證的單選按鈕

    這篇文章實現(xiàn)了ASP.NET?MVC擴展帶驗證的單選按鈕功能,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09

最新評論