使用Game Center登录在远程服务器上引导登录

Ken*_*ins 24 iphone objective-c ios game-center

我想让用户使用他们的Game Center帐户自动在我的服务器上创建一个帐户.当我的iOS应用程序打开时,它需要与XMPP服务器进行连接和身份验证才能与游戏服务器通信.我正在尝试在GKLocalPlayer中找到一些内容,这是我可以用来创建/验证远程用户登录的登录设备的私有内容,但玩家唯一看来唯一的东西就是他们的playerID,这是相当公开的.

我真的不想将GameCenter用于所有内容,因为它将我的用户群分割为仅iOS设备.

来自developer.apple.com

...如果您的应用程序连接到您自己的网络服务,您可以使用服务上的播放器标识符来保存数据.

由于玩家标识符不是私有的,我们可以确定这不是伪造的吗?

rpe*_*ich 7

一切GKLocalPlayer都可以伪造.同样可以说UIDevice.

更好的策略是将私有会话数据分配给每个连接的设备,并提供通过验证电子邮件将设备会话链接到帐户的方法.也许包括playerID允许与GameKit数据交互,但不能作为识别手段.

  • 这个问题的答案基本上是"不",这很糟糕.无论如何,谢谢你的建议. (2认同)

and*_*ser 3

从 iOS 7 开始,这似乎是可能的:

[localPlayer generateIdentityVerificationSignatureWithCompletionHandler]

https://developer.apple.com/library/ios/documentation/GameKit/Reference/GKLocalPlayer_Ref/Reference/Reference.html