保护 Smooch Webhook
Securing Smooch Webhooks
我使用 smooch whatsapp
集成和 smooch webhook
在 whatsapp 中创建一个机器人。
我想验证 来自我的 webhook 的帖子。
我在文档中看到 header 中有一个变量:x-api-key
,应该完全用于该变量:
我找不到关于如何使用这个变量的任何解释。我意识到它包含 webhook
的 密钥 。但还有什么?
如何从 data/body 创建另一个签名以检查它是否与 header 中发送的签名匹配?
我以前没有使用过 Smooch webhooks,但阅读他们的文档后我相信以下几点:
X-Api-Key
不是用于对负载进行签名的常用 Webhook 签名。它实际上只是一个简单的秘密 returned 在每个 webhook POST 事件请求中。
- 当您在
secret
字段中 create the webhook 和 return 时,密码会自动生成。
- 您还可以使用 GET webhook 端点获取机密。其他方法也似乎return这个秘密。
- 以某种方式保存秘密,然后简单地比较每个 webhook 事件请求上的秘密的
X-Api-Key
header 值以验证真实性。
- 您可以通过以编程方式删除并在必要时 re-recreating webhook 轮换密钥。
我使用 smooch whatsapp
集成和 smooch webhook
在 whatsapp 中创建一个机器人。
我想验证 来自我的 webhook 的帖子。
我在文档中看到 header 中有一个变量:x-api-key
,应该完全用于该变量:
我找不到关于如何使用这个变量的任何解释。我意识到它包含 webhook
的 密钥 。但还有什么?
如何从 data/body 创建另一个签名以检查它是否与 header 中发送的签名匹配?
我以前没有使用过 Smooch webhooks,但阅读他们的文档后我相信以下几点:
X-Api-Key
不是用于对负载进行签名的常用 Webhook 签名。它实际上只是一个简单的秘密 returned 在每个 webhook POST 事件请求中。- 当您在
secret
字段中 create the webhook 和 return 时,密码会自动生成。 - 您还可以使用 GET webhook 端点获取机密。其他方法也似乎return这个秘密。
- 以某种方式保存秘密,然后简单地比较每个 webhook 事件请求上的秘密的
X-Api-Key
header 值以验证真实性。 - 您可以通过以编程方式删除并在必要时 re-recreating webhook 轮换密钥。