Android:验证用户服务器端的合法性



我有一个应用程序,通过http从服务器检索数据。应用程序发送一个POST请求和一些变量来执行查询并以JSON格式检索数据。

问题是我找不到一种方法来使数据安全进入我的服务器(只有安装了我的应用程序的用户才能访问)。如果有人得到我的应用程序,并反编译它(即使ProGuard也不会避免这种情况太久),一个修改后的应用程序可以开始向我的服务器发送请求,使用完全相同的协议,参数和IP地址。

所以,简而言之,问题是:是否有一种方法可以检查(当然是服务器端)请求是否来自合法用户?有什么方法可以检查请求者是否在使用我的应用程序,而不是一个已修改的应用程序?

PS:我一直在寻找这样的问题,只发现另一个接近的建议"用户登录"的方法作为答案。我不想用任何登录机制来打扰我的用户。

Google提供了一种方法来验证来自Android应用程序的后端调用,作为Google Play Services的一部分,允许您验证后端调用是否来自已签名的应用程序。它的一个优点是不需要用户登录来验证调用,因为用于获取认证令牌的客户端ID范围。

最新更新