bounty将在2天后过期。回答此问题可获得+50声望奖励。LaurentY希望引起更多人关注此问题。
我开发了一种赌场应用程序,用户可以在上面赢得真实的的现金。为了避免欺诈,我们需要检查用户在同一时间只使用一个设备。
当我看Android文档关于如何识别设备:https://developer.android.com/training/articles/user-data-ids#best-practices-android-identifier:
对于所有其他用例,只要有可能,就使用Firebase安装ID(FID)或私人存储的GUID,但支付欺诈防范和电话除外。对于绝大多数非广告用例,FID或GUID就足够了。
所以医生说:
- 使用FID或GUID,除非是支付欺诈(这是我的情况)
- 为了避免使用诸如IMEI或DEVICE_ID之类的硬件标识符
那么,应对欺诈的最佳做法是什么?
1条答案
按热度按时间vcirk6k61#
当用户打开应用程序并登录时,您应该向服务器发送一个包含用户ID的请求,为该用户分配一个会话ID,并将Map{userId:sessionId}在用户保持联机的时间段内存储在键值存储区中。
现在,每当用户打开您的应用程序并登录(或已经登录)时,检查该用户的ID是否已经存在于键值存储中,如果存在,则不允许该会话,否则登录该用户,当用户离开您的应用程序时,从键值存储中删除该Map。