如何防止不必要的钩子请求?

时间:2013-03-02 07:19:58

标签: git node.js github

我开发了一个与Github和Github Hooks一起工作的应用程序,当收到新的钩子请求时,我只是update / clone存储库(然后我在存储库上做了一点处理)

因为我盲目地接受所有钩子请求,所以每个人都可以生成一个钩子请求并发送给我。

我想知道如何保护我的应用程序免受不必要的挂钩请求?

1 个答案:

答案 0 :(得分:1)

Github不包含任何有效负载的秘密信息(基于https://help.github.com/articles/post-receive-hooks)。

因此,最好的防御方法是在网络摘要的网址中使用随机字符串,以便难以猜测网络网址的网址。

你也可以考虑,虽然这可能会随着时间的推移而破裂,但是检查request.connection.remoteAddress是否在知道属于Github主机的地址范围内(此时是Rackspace?)。这个答案包括知道IP地址:How to verify a post-receive hook request actually came from github?