JWT 鑒權(quán)插件上線!讓你的 API 更安全!

2023-04-19 09:24 更新
API鑒權(quán)是保證API安全性和可用性的一項(xiàng)重要措施。通過(guò)API鑒權(quán),系統(tǒng)可以對(duì)用戶或者應(yīng)用進(jìn)行有效的身份認(rèn)證和權(quán)限管理。

除了我們之前更新的 Basic Auth 鑒權(quán)插件,這次給大家?guī)?lái) JWT 鑒權(quán)插件。


JSON Web Token是一種開(kāi)放標(biāo)準(zhǔn),可以讓服務(wù)器生成一個(gè)密鑰簽名的Token,該Token包含用戶、其角色和過(guò)期時(shí)間等信息。JWT Token會(huì)發(fā)送回客戶端,然后傳遞到后續(xù)的API請(qǐng)求中,以對(duì)接下來(lái)的操作進(jìn)行認(rèn)證和授權(quán)。


如何使用


在插件市場(chǎng)中找到 JWT 插件,安裝

插件


安裝插件后,測(cè)試頁(yè)面選中鑒權(quán),填入數(shù)據(jù)后會(huì)自動(dòng)在請(qǐng)求信息中添加頭部 Authorization

插件2


JWT 說(shuō)明

Client Request GET /security/somethings HTTP/1.1 Authorization: Basic bmFtZTpwYXNzd29yZA==


包括:


頭部

{ "alg": "HS256", "typ": "JWT" }

Payload

{ "name": "Postcat", "introduce": "An extensible API tool." }


WT 規(guī)定了 7 個(gè)默認(rèn)字段供開(kāi)發(fā)者選用。

  • iss (issuer):簽發(fā)人
  • exp (expiration time):過(guò)期時(shí)間
  • sub (subject):主題
  • aud (audience):受眾,相當(dāng)于接受者
  • nbf (Not Before):生效的起始時(shí)間
  • iat (Issued At):簽發(fā)時(shí)間
  • jti (JWT ID):編號(hào),唯一標(biāo)識(shí)


簽名 Signature


對(duì)于每種加密算法,簽名都對(duì)應(yīng)的一個(gè)計(jì)算公式。例如 SHA256 加密算法的簽名如下:

HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload) + "." + Secret )

后續(xù)我們還會(huì)繼續(xù)更新其他鑒權(quán)插件,歡迎關(guān)注!


這個(gè)項(xiàng)目是開(kāi)源的,感興趣的話可以給項(xiàng)目 Star 和 fork 一下


Github:

https://github.com/Postcatlab/postcat


Gitee:

https://gitee.com/eolink_admin/postcat


關(guān)于 Postcat

Postcat 是開(kāi)源的 API 管理工具,有 API 相關(guān)的核心功能,還有豐富的插件廣場(chǎng),幫你快速地完成 API 的發(fā)布和測(cè)試功能。


核心功能:
  1. API 文檔管理,可視化 API 設(shè)計(jì),生成 API 文檔
  2. API 測(cè)試, 自動(dòng)生成測(cè)試參數(shù),自動(dòng)生成測(cè)試用例,可視化數(shù)據(jù)編輯
  3. Mock,根據(jù)文檔自動(dòng)生成 Mock,或創(chuàng)建自定義 Mock 滿足復(fù)雜場(chǎng)景
  4. 插件拓展,眾多插件擴(kuò)展產(chǎn)品功能,打造屬于你和團(tuán)隊(duì)的 API 開(kāi)發(fā)平臺(tái)
  5. 團(tuán)隊(duì)協(xié)作,既能實(shí)現(xiàn)API 分享也能可以創(chuàng)建云空間共同協(xié)作


突出亮點(diǎn):
  1. 免登錄即可測(cè)試,省去繁瑣的驗(yàn)證登錄的操作
  2. 界面簡(jiǎn)潔,沒(méi)有冗余的功能與復(fù)雜選項(xiàng)
  3. 開(kāi)源,免費(fèi),適合個(gè)人以及小團(tuán)隊(duì)使用
  4. 豐富的插件,支持?jǐn)?shù)據(jù)遷移、主題、API 安全等高達(dá) 22 款插件
  5. 國(guó)產(chǎn),能更好的理解國(guó)內(nèi)用戶的需求,溝通無(wú)障礙
  6. 完善的用戶文檔,跟著操作就能快速上手


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)