簡體   English   中英

HMAC - 通過 Postman 進行 SHA256 身份驗證

[英]HMAC - SHA256 authentication via Postman

我正在嘗試通過 Postman 模擬對我的 Rails 應用程序的 webhook POST 請求(在實際工作流程中運行良好)。我找到了很多示例,但沒有一個有效 - 我一直收到 401 代碼。 我所做的是定義標頭和Pre-request Script ,如下所示:

郵遞員標題

JS 作為基於此文檔Pre-request Script

postman.setEnvironmentVariable("hmac", CryptoJS.HmacSHA256(request.data, 'my_secret_string').toString(CryptoJS.digest));

而且我仍然收到 401 錯誤。

我用來觸發 webhook 的外部 API 文檔 state:

每個 webhook 將與 X-AQID-Signature header 一起發送,它是通過使用 HMAC 方法和 SHA256 算法對請求的有效負載進行哈希處理,使用共享密鑰作為鹽來創建的。 這意味着在收到有效載荷后,您可以通過復制哈希方法來驗證其完整性。

就像我說的那樣,它在現實生活中的工作流程中運行良好,所以我在 postman 實現中遇到了錯誤。 我錯過了什么?

您不需要設置任何環境變量,只需從腳本中添加一個 header 即可。 我在一個非常相似的案例中這樣做了:

var signBytes = CryptoJS.HmacSHA256(pm.request.body.raw, 'YOUR_SECRET');
var signHex = CryptoJS.enc.Hex.stringify(signBytes);
pm.request.headers.add({
    key: "HEADER_NAME",
    value: signHex
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM