Webhooks 安全:HMAC 签名验证与幂等处理验证流程signature=$(echo -n "$payload" | openssl dgst -sha256 -hmac "$secret" -binary | xxd -p -c 256)
服务器验证示例(Node.js)const crypto = require('crypto');
function verifySignature(raw, sig, secret) {
const h = crypto.createHmac('sha256', secret).update(raw).digest('hex');
return crypto.timingSafeEqual(Buffer.from(h), Buffer.from(sig));
}
幂等处理使用 `Idempotency-Key` 作为去重键,持久化处理结果对重复请求返回历史结果,避免二次副作用重放与时效记录事件时间戳并设定最大允许窗口总结结合签名、幂等与时效控制,可有效提升 Webhooks 的安全与鲁棒性。

发表评论 取消回复