8
为什么使用应用内结算设置开发人员有效负载很重要?
我正在使用应用内结算API的版本3。我有一个受管理的非消耗性物品。我尚未在我的应用程序中发布此功能,因此我想在购买之前确定购买的有效载荷内容。 来自“安全最佳实践”: 发出购买请求时设置开发人员有效负载字符串 使用应用内结算第3版API,在将购买请求发送到Google Play时,您可以包括“开发人员有效载荷”字符串令牌。通常,这用于传递唯一标识此购买请求的字符串令牌。如果您指定字符串值,则Google Play会返回此字符串以及购买响应。随后,当您对此次购买进行查询时,Google Play会返回此字符串以及购买详细信息。 您应该传递一个字符串令牌,该令牌可以帮助您的应用程序识别进行购买的用户,以便以后可以验证该用户是否进行了合法购买。对于消耗品,您可以使用随机生成的字符串,但是对于非消耗品,则应该使用唯一标识用户的字符串。 当您从Google Play取回响应时,请确保验证开发人员有效负载字符串与您先前与购买请求一起发送的令牌匹配。作为进一步的安全预防措施,您应该在自己的安全服务器上执行验证。 对与错,我决定不采取设置服务器以进行购买验证的“进一步的安全预防措施”。而且我不会存储自己的购买记录-我总是调用计费API。那么,我真的有理由进行此有效负载验证吗?验证API本身在举报购买商品之前肯定会验证用户的身份,并且如果攻击者破坏了设备(应用程序或Google Play API),我看不出对其进行额外检查会没有任何好处用户在设备上可以轻易绕过的身份。还是有我没有想到的这样做的理由?