我可以使用IP地址来限制API访问

时间:2010-06-14 17:57:12

标签: api jsonp

我有一个迷你API,仅适用于我制作的应用。 API服务位于我的应用的单独域中。我对它进行jsonp调用并接收json。

因此我只希望我的应用能够访问它。我可以为我的应用列出一系列IP地址并允许它们吗?有没有更好的方法来阻止其他人对我的API的请求?

4 个答案:

答案 0 :(得分:2)

实现基于IP的过滤的最佳方式是在Web服务器级别。以下是access control with Apache的简要介绍。如果那恰好是你的网络服务器。

答案 1 :(得分:1)

如果IP在整个时间内保持不变,那么这是一个有效的想法。另一种方法是使用id和key,如果你期望从其他(动态)ip地址进一步使用。

答案 2 :(得分:1)

运行API服务的操作系统是什么?如果是Linux,请查看iptables以仅允许某个IP访问特定端口。

答案 3 :(得分:0)

老实说,我不会选择基于IP的解决方案。虽然它可能在短期内起作用,但它将在未来使事情变得艰难。例如,如果你的ip提供商决定重置怎么办?最有可能的(除非您已明确确定需要与您的提供商进行静态IP),否则您的IP将发生变化。然后你的程序会出错并且你不知道为什么(或者更糟糕的是,你不会知道计算机现在已断开连接)。此外,如果您想添加机器,请考虑管理1000 ips .... yikes!这样做的“正确”方法是使用其他方案(user / pass,pki等)验证机器。

相关问题