2010-06-14 198 views
2

我有一個只適用於我創建的應用程序的迷你API。 API服務與我的應用程序位於不同的域中。我使用jsonp調用它並接收json。我可以使用IP地址來限制API訪問嗎

因此,我只希望我的應用能夠訪問它。我可以列出一系列適用於我的應用程序的IP地址並允許它們嗎?有沒有更好的方法來阻止任何人對我的API的請求?

+1

還有更多的解決方案,所有解決方案都取決於您的基礎架構設置方式。 – Redlab 2010-06-14 18:02:03

回答

2

實現基於IP的過濾的最佳方式是在Web服務器級別。這裏是對access control with Apache的簡要介紹。如果這恰好是你的網絡服務器。

1

如果IP始終保持不變,是的,這是一個有效的想法。如果您希望從其他(動態)IP地址進一步使用,另一種方法是使用ID和密鑰。

1

運行在哪個操作系統上的API服務?如果是Linux,請查看iptables以僅允許某個IP訪問特定端口。

0

老實說,我不會去與基於IP的解決方案。雖然它可能在短期內發揮作用,但將來會讓事情變得艱難。例如,如果您的IP提供商決定進行重置,該怎麼辦?最有可能的(除非你已經明確地建立了你的提供者對靜態IP的需求),你的IP將會改變。然後你的程序會出錯,你不知道爲什麼(或者更糟糕的是,你不知道現在一臺計算機已斷開連接)。此外,如果您想添加機器,請考慮管理1000 ips .... yikes!這樣做的「正確」方式是使用其他方案(用戶/通行證,pki等)驗證機器

相關問題