如何使用身份验证¶
本页面介绍了身份验证,这是Hive平台在Hive SDK 4.3.0中提供的新身份验证系统。身份验证管理从SDK初始化到登录的一系列过程。
Note
如果您想使用身份验证 v1 开发游戏,请参阅使用身份验证 v1 菜单的 SDK v4 开发。
组成¶
身份验证由三个步骤组成。
- SDK 初始化
- 初始化SDK后,您可以使用SDK提供的所有功能
- 初始化阶段会显示服务条款以及更新/通知弹窗
- 初始化阶段仅在基于Android的设备上显示权限弹窗
- 显示游戏服务器选择菜单和维护弹窗
- 在SDK初始化后向用户提供游戏服务器选择菜单。
- 在选择游戏服务器后显示服务器维护弹窗。
- 登录
- 通过身份验证,会员以及多种ID 提供者(IdP)可用于登录游戏。
特性¶
- 身份验证灵活,可以与多种IdP配合使用,例如Apple Game Center、Google Play Games和Facebook。
- 可以使用社交媒体账户(如Facebook)进行登录,无论会员身份如何。
- 可以使用设置在用户设备上的Apple Game Center或Google Play Games账户进行隐式登录。
- 支持自定义UI进行身份验证和登录程序。
- 如有需要,可以根据游戏概念设计新的UI,而不是使用SDK提供的UI。
- 通过分布式服务器支持稳定的登录。
- 即使国际互联网线路出现问题或Hive服务器发生故障,用户也可以通过位于韩国以外的分布式服务器登录游戏。
AuthV4.Helper¶
身份验证提供了 AuthV4.Helper,以便更轻松、更快速地实现登录功能。
- 您可以找到升级版的API,该API用于比较两个账户;一个用于执行游戏,另一个用于用户设备上的登录。
- 设备上用于Google Play Games或Apple Game Center的账户与同步的PlayerID账户进行比较。
- 您无需检查游戏中的数据,只需查看SDK文件。
- 通过验证国家数据,显示合适的ID提供者(IdP)。 (例如,如果国家信息为中国(CN),则访客账户将从IdP列表中隐藏。)
- 通过识别设备的操作系统类型显示合适的IdP。 (例如,如果设备的操作系统类型基于Google,并且国家信息为中国(CN),则Google Play Games将从IdP列表中隐藏。)
- 您可以执行与SDK同步的简化指南。
- 与Hive服务器API的实现部分不必要的部分被删除,以遵循指南。
- 更新使理解和实现变得更加容易,而不是使用Hive服务器API。
可用的提供者¶
如前所述, 认证通过 IdP 验证用户。用户可以使用之前同步的 IdP,或选择其他 IdP 来链接到登录账户。提供的 IdP 可以根据游戏的不同而设置,Hive 平台根据用户的国家信息向用户展示适当的 IdP。
身份提供者在身份验证中提供¶
用户标识¶
在身份验证中,PlayerID 是一个唯一的密钥,用于识别用户。 PlayerID 具有以下特征:
- 可以与多种身份提供者(IdP)同步。
- 一个 PlayerID 不能有超过一个用户 ID 来自同一个 IdP。
- 一个 IdP 的用户 ID 不能在同一游戏中与多个 PlayerID 关联。
- 尽管使用相同的 IdP 账户,每个游戏的 PlayerID 的发放方式是不同的。
- 与身份验证提供的任何 IdP 都未同步的用户是访客用户。
PlayerID 示例¶
| 编号 | 玩家ID | 游戏 | 会员资格 | Google Play 游戏 | 游戏中心 | |
| 1 | 10001 | A | X | F10000 | G10000 | A10000 |
| 2 | 10002 | A | H10000 | X | G20000 | X |
| 3 | 20001 | B | H10000 | X | X | X |
| 4 | 20003 | B | X | X | X | X |
- 用户编号1与三个身份提供者同步PlayerID;Facebook、Google、Play Games和Apple Game Center。
- 用户编号1和2将来自一个游戏的每个PlayerID与Google Play Games的两个不同用户ID同步。
- 用户编号2和3将相同的会员账户与两个不同游戏的PlayerID同步。
- 用户编号4是一个未与任何IdP同步的访客用户。
