登录基础知识和最佳实践
特定于平台的身份验证教程
尽管所有特定于平台的身份验证教程都介绍如何使用 LoginWithCustomID 登录,在已发布游戏中对这种登录的使用还是仅限于将 PlayFab 帐户配对到预先存在的数据库或其他后端系统。
否则,已发布游戏很少使用自定义 ID 进行主要登录,因为在大多数情况下,您需要在玩家平台上捕获其他信息。
为什么首先演示此方法
坦白说,因为它最简单。 自定义 ID 可以是任何内容,可更轻松地调用第一个 API。 在认真进行游戏开发和发行后,可能会切换到另一种登录机制。
最佳实践
除非确切 了解为何在已发行游戏中需要 LoginWithCustomId
,否则应在发布之前迁移到另一种登录机制。
匿名登录机制
匿名登录机制的使用最简单。 这类机制不 要求玩家输入任何内容,首次用户体验没有任何麻烦,最后在 PlayFab 中为每个玩家创建唯一的帐户。 这是最常见的登录机制。
这些登录包括:
因为它们是匿名的,这些方法可以唯一地标识设备,但是不包含有关玩家的任何可恢复信息。 如果玩家丢失或破坏了其设备,则帐户会丢失,很难恢复。 在大多数情况下,帐户只是孤立的,不可检索。
那么为什么使用它呢? 因为它为玩家进入所设置的可能障碍最低,无需任何交互。 它使玩家轻松试玩游戏,同时创建玩家回来继续玩游戏时可以使用的帐户(只要他们拥有该设备)。
最佳实践
您的游戏应使用 匿名 登录名来创建新帐户并将新设备链接到现有帐户。 我们建议这样做,因为某些玩家可能会放弃要求提供电子邮件或可识别信息的游戏。
但是匿名登录完成后,应提供用于添加可恢复 登录凭据的选项,并提供一些有关可获得的好处的说明。
特别是应确保指导付费客户使用可恢复 登录系统,以防止其帐户丢失。 永远丢失免费帐户会令人失望...
而永远丢失付费帐户会影响收入。
iOS 设备
对于 iOS 设备,如果玩家 ID 卸载你的游戏,则会更改该 ID,然后 重新安装它。 确保在 iOS 上具有一致 ID 的一种方法是将玩家的设备 ID 保存到 iTunes KeyChain,以便在游戏开始时从其中读取它并用于登录。
必须确定如何为任何其他设备或平台生成唯一的自定义 ID。 自定义 ID 是一种用于其他平台或设备的有效替代方法,但必须谨慎地生成自定义 ID。 如果它们太简单,则有黑客窃取他人帐户的风险。
android 设备
有关最新最佳做法,请参阅 Google 的用户数据 ID 指南。
注意
只需对每个设备绑定一次 可恢复登录。 绑定后,游戏可以继续使用匿名登录而不存在任何缺点。 请参阅下一节。
匿名登录对于玩家十分方便,但 不需要。 游戏可以完全依赖于可恢复登录机制。 但是,如果玩家 不必 在每次登录时都键入密码,他们会更加开心。
可恢复登录机制
可恢复 登录机制需要玩家提供一些标识信息。 如上所述,它可以与匿名登录配合使用以实现最佳玩家体验。
纯 PlayFab 选项
最简单的选项为:
如果使用,则直接由 PlayFab 对电子邮件或用户名及密码进行身份验证。 帐户可通过电子邮件或用户名进行恢复,即使 用户忘记其密码。 登录通常是安全的(可以在游戏中实现自己的密码强度检查以进行改进)。
第三方 API 选项
这些要求对另一个服务进行单独的 API 调用,但不需要安装其他 SDK:
- LoginWithKongregate
- LoginWithSteam
- LoginWithTwitch
- LoginWithGameCenter (仅限 iOS,前提是需要安全身份验证。)
会在用户与第三方服务 API 调用之间进行安全身份验证。
第三方 SDK 选项
这些选项需要将单独的 SDK 安装到游戏中。 在第三方 SDK 中进行安全身份验证。
在所有第三方选项中,这些服务都处理登录凭据,而您将安全令牌传递给相应的 PlayFab 登录方法。 PlayFab 始终不知道这些服务的登录凭据。
更多最佳实践
使用适当的匿名登录名进行基本登录,并鼓励玩家链接到可恢复的登录名。 应选取您感到轻松且熟悉的任何一种或多种可恢复机制。
提示
帐户恢复只需要一个 可恢复登录,因此不要强迫玩家使用所有这些登录。
不安全的登录机制
可恢复登录机制的一个好处是,它们比使用自定义 ID 登录更安全,因为它们需要与第三方进行验证身份验证,而不是依赖用户的自定义 ID 来保留共享机密。
总结
匿名登录十分出色,可为用户提供完全自动的登录过程。 不足之处是帐户恢复,有时必须使用可恢复登录才能实现该功能。
以下流程图描述了匿名登录后添加可恢复的登录机制。
最佳实践
为设备使用合适的匿名登录,并结合使用一个或多个用于帐户恢复的选项。