Typography

活版印字


  • Home
  • Archive
  • Categories
  • Tags
  •  

© 2020 alincode

Theme Typography by Makito

Proudly published with Hexo

JWT (3) 什麼是 JWT

Posted at 2016-03-03 JWT  jwt 

那接下來,我們就來談談這進化的 Token。

什麼是 JWT

JWT 全名是 JSON Web Tokens,它提供強大的加密演算法並可內含資訊,做為安全資訊傳輸,解碼後的資料是以JSON作為資料讀取。因為資料透過了數位簽證處理,所以可以被信任跟驗證。

官網上 JWT 清楚的列出,各個語言支援 JWT 的 library,甚至特別標出還不支援的部分及線上Debugger工具,從小地方就可以看出他們對於 JWT 的重視。

進一步定義

  • 因為它 szie 很小,所以可以很輕易的被附加在 URL 參數、HTTP header 裡。
  • 它內附基本資訊,並可內嵌其他自定資訊,

它可以應用在哪裡?

  • 登入驗證
  • 資訊交換

常見實作方式

使用者輸入帳號密碼,然後傳給 Server,對賬戶密碼驗證無誤後,Server 通常會把 UserId,塞在 Claims (Payload) 裡作為識別,然後用使用一組私密碼,產出一個 JWT 格式的 Token 回傳給前台,此時前台需要把這組 Token 記起來,可能用 Web Storage 或 cookie,但一般是 Web Storage。

下次要跟 Server 要資料的時候,將 Token 取出,透過 HTTP Authorization header 或 URL 參數傳遞給 Server。Server 因為有私密碼,可以直接呼叫有實作 JWT 的 library,可得知 Token 是否過期,或 Token 真偽的資訊。

JWT - RTC 7519

Share 

 Previous post: JWT (4) Server Side 實作範例 Next post: JWT (2) - 進化的 Token 

© 2020 alincode

Theme Typography by Makito

Proudly published with Hexo