0

是否有一些方法可以防止使用 Playfab 进行多设备登录?

我有一个带有 Playfab 身份验证的纸牌游戏。我必须有一个作弊者的登录控制,我希望每个玩家和他们的每台设备只有一个登录名,如果用户使用新设备登录,旧设备必须自动注销。

我尝试在我的 c# 代码中在运行时更改会话票证或实体票证,但我在另一篇文章中读到 Playfab 专为多设备登录而设计,实际上没有任何功能可以更改会话或实体票证。

我看到有人在使用 CloudScript,但我不知道它是如何工作的,也不知道这样做是否繁重。

4

1 回答 1

0

一个可能的选项是在游戏启动时执行自定义 cloudscript 函数,以将当前 deviceId 保存在玩家数据上。每个请求都必须使用此“令牌”进行验证,因此客户端必须在每次调用时传递此类信息。

如果 deviceId 与保存在服务器上的匹配,则继续顺利执行,否则应将错误作为响应传递给客户端。例如,此错误可用于在客户端显示弹出窗口以通知用户。

每次登录时,都会在 PlayerData 上更新 deviceId。通过这种方式,您知道每次请求都会读取它,但只写入一次(在游戏启动时)。此外,只有最后记录的才能获取服务器数据。在重新启动应用程序之前,其他设备将无法从服务器获得正确的响应。

于 2021-06-29T20:54:51.053 回答