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。
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ā)者選用。
簽名 Signature
對(duì)于每種加密算法,簽名都對(duì)應(yīng)的一個(gè)計(jì)算公式。例如 SHA256 加密算法的簽名如下:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload) + "." +
Secret
)
后續(xù)我們還會(huì)繼續(xù)更新其他鑒權(quán)插件,歡迎關(guān)注!
Github:
https://github.com/Postcatlab/postcat
Gitee:
https://gitee.com/eolink_admin/postcat
Postcat 是開(kāi)源的 API 管理工具,有 API 相關(guān)的核心功能,還有豐富的插件廣場(chǎng),幫你快速地完成 API 的發(fā)布和測(cè)試功能。
更多建議: