2013-03-02 42 views
3

我開發了與Github上和Github上魚鉤運行的應用程序,當一個新的掛鉤請求收到,我只是update/clone庫(然後我做倉庫小流程)如何防止不需要的掛鉤請求?

因爲我接受所有掛鉤請求盲目,每個人都可以生成一個鉤子請求併發送給我。

我想知道如何保護我的應用程序免受不需要的掛鉤請求?

+0

這是一個開源的應用程序嗎? – Chronial 2013-03-02 12:01:51

+0

@Chronial是的,這是一個開源的。 – 2013-03-03 06:10:21

+1

我不認爲這是重複的,因爲它不能確定,鉤子請求如何歸類爲「不需要的」...... @AfshinMehrabani:請詳細說明這一點。 – guerda 2013-03-12 10:16:14

回答

1

Github不包含有效負載的任何祕密信息(基於https://help.github.com/articles/post-receive-hooks)。

所以你最好的防禦方法是通過在你的web鉤子的url中使用一個隨機字符串來使你的webhook的url很難猜測。

您也可以考慮,雖然這可能會隨着時間的推移而中斷,但檢查request.connection.remoteAddress是否屬於Github主機(Rackspace此刻?)的地址範圍內。這個答案包括知道的IP地址:How to verify a post-receive hook request actually came from github?