Github offers a way当使用 webhooks 更新项目时,让 URL 知道。
如何验证发送到我服务器的 post-receive hook 的帖子实际上来自 github?
我应该检查发件人的 IP 地址还是可以在某处发送身份验证检查?我想确保有人不会试图欺骗假装来自 github 的请求。
一种选择是通过 PubSubHubbub 设置 Hook 并使用 hub.secret
创建帖子正文的 SHA1 HMAC 签名的选项。但是,这需要我的服务器设置请求,而不是等待用户在需要时设置对我的站点的接收后回调。我宁愿让用户将我给他们的 URL 粘贴到帖子 url 中。
最佳答案
您可以 ping GitHub's Meta API获取传入服务 Hook 将源自的 IP 地址数组(以 CIDR 表示法),并根据请求的 IP 对它们进行交叉检查:
https://api.github.com/meta
关于authentication - 如何验证 post-receive hook 请求实际上来自 github?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9007030/