大家好,我正在运行一个图片托管网站,我正在为它设计一个API。我担心的是,我不希望任何人能够做这样的事情:
while(true) {
Upload();
}和垃圾邮件/拒绝服务的网站。
我目前的解决方案是将所有IP地址限制在每天/小时一定数量的上传。我相信这对于将使用API的桌面应用程序将会工作得很好,但是对于希望使用它的网站,所有的用户都将拥有相同的IP (服务器的)。
我认为最好的解决方案是让用户帐户通过API进行身份验证,然后在每个帐户滥用时将其禁用。这样做的问题是我的网站根本没有用户帐户,它完全是匿名的。
还能做些什么呢?我希望尽可能地保持开放,同时有能力禁止明显滥用该服务的用户/I。
发布于 2009-09-10 01:40:33
如果你不想实现用户帐户,让那些想要使用api的用户注册一个api密钥/密钥,你可以使用它来进行速率限制。
发布于 2009-09-10 01:39:08
查看OAuth。
发布于 2012-10-24 15:08:22
查看开源应用程序接口管理工具,如apiGrove;apiGrove.net或GitHub上的apigrove.github.com/apigrove。apiGrove支持多种接口保护方式,包括IP白名单和密钥授权。
https://stackoverflow.com/questions/1402985
复制相似问题