我正在开发一个iOS应用程序,用户可以在其中显示与周围环境相关的内容.我有一个用户名/密码验证.因此,用户将他的gps数据及其登录信息发送到我的PHP / MysqL后端,然后返回数据.
但是,我担心有人可能会反编译我的应用程序,注册然后“扫描”我的整个数据库,只需发送不具有实际来自iOS设备的不同gps数据的请求.有什么方法可以防止这种情况吗?我已经google了,发现了这个威胁:
How to make sure API requests come from our mobile (ios/android) app?
但我认为那里的问题略有不同,并没有解决我的问题.
我查看了API密钥,但没有找到办法阻止恶意用户通过注册/反编译获取对API的访问权限,然后使用他的登录信息以及代码中的密钥.
任何帮助表示赞赏.
一月
解决方法:
我之前遇到过类似问题的问题.最后,您无法真正依赖于检查基于设备的耦合和访问规则.
首先要考虑的是某种形式的身份验证.但猜猜你已经考虑过了,它可能不适用于你的应用.
我的方法是检查和限制一天内某个来源的查询数量.根据刷新间隔计算,您希望从后端获取的数据量是多少,在此基础上增加10%,并在超出时停止向该目标提供数据,并向管理员发送有关该事件的电子邮件,以便他可以调查一下,也许永久地禁止客户.
正如之前的评论中所述,也不是防水,但它以设备无关的方式工作,并且你越难以滥用它,它就越好.