一年前我使用版本 1 构建了一个 ionic 应用程序,该应用程序是公开的,不需要身份验证。
如何仅从 android 智能手机启用 api 消耗?
如果有人反编译 apk,他们可以看到 api 并使用 api 中的数据我如何防止这种情况?
归根结底,要完全阻止某人通过您的公共 API 访问或抓取数据,您无能为力。
但是,这里有一些想法可以帮助缓解它:
API 密钥
在您的应用程序中存储 API 密钥,并在处理请求之前在服务器端验证该密钥。如果他们反编译您的应用程序,此建议并没有太大帮助,但至少它是防止仅通过使用应用程序公开 API 的开始(特别是如果您通过 SSL 发出所有 HTTP 请求)。
IP 地址记录
在您的移动应用程序中设置一些记录用户 IP 地址的代码。然后,当调用您的公共 API 时,它会将请求中的 IP 地址与从移动应用程序记录的 IP 地址列表进行比较。您甚至可以使用时间戳来限制可访问 API 的时间范围。
速率限制/使用配额
您可以对 API 设置一些通用的速率限制。仅允许在指定时间范围内来自任何给定 IP 地址、用户、设备 ID 等的一定数量的请求。
希望这可以帮助。我也很想听听社区中其他人的更多想法!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句