跳轉至

如何使用身份驗證

本頁介紹身份驗證 v4,這是Hive平台的新身份驗證系統,從Hive SDK v4.3.0開始提供。身份驗證 v4管理從Hive SDK初始化到登錄的一系列過程。

Note

如果您想使用身份驗證 v1 開發遊戲,請參閱使用身份驗證 v1 菜單的 SDK v4 開發。

組成

身份驗證由三個步驟組成。

  1. Hive SDK 初始化
    • 在初始化SDK後,您可以使用Hive SDK提供的所有功能
    • 初始化階段會顯示服務條款以及更新/通知彈出窗口
    • 初始化階段僅在Android設備上顯示權限彈出窗口
  2. 顯示遊戲伺服器選擇菜單和維護彈出窗口
    • SDK初始化後向用戶提供遊戲伺服器選擇菜單。
    • 在選擇遊戲伺服器後顯示伺服器維護彈出窗口。
  3. 登錄
    • Hive 會員以及多樣的ID 提供者 (IdP) 可通過身份驗證 v4 登錄遊戲。

功能

  • 身份驗證可靈活應用於多種IdP,例如Apple Game CenterGoogle Play GamesFacebook
    • 可以使用社交媒體帳戶登錄,例如Facebook,無論是否為Hive會員。
    • 使用設置在用戶設備上的Apple Game CenterGoogle Play Games帳戶可進行隱式登錄。
  • 支持自定義UI以進行身份驗證和登錄程序。
    • 如有需要,根據遊戲概念設計新的UI,而不是使用Hive SDK提供的UI
  • 通過分佈式伺服器支持穩定的登錄。
    • 即使國際互聯網線路出現問題或Hive伺服器故障,用戶也可以通過位於韓國以外的伺服器登錄遊戲。

認證助手 v4

Hive SDK v4.7.0 提供了 AuthV4.Helper,這是一個用於實現快速簡便登錄的新功能。

  • 您可以找到升級的 API,它比較兩個帳戶;一個用於執行遊戲,另一個用於用戶設備上的登錄。
    • 設備上的 Google Play GameApple Game Center 帳戶與 PlayerID 的同步帳戶進行比較。
  • 您不必檢查遊戲中的數據,只需查看 SDK 文件。
    • 通過驗證國家數據顯示合適的 ID 提供者 (IdP)。 (例如,如果國家信息是中國 (CN),則來賓帳戶將從 IdP 列表中隱藏。)
    • 通過識別設備的操作系統類型顯示合適的 IdP。 (例如,如果設備的操作系統類型基於 Google 且國家信息是中國 (CN),則 Google Play Game 將從 IdP 列表中隱藏。)
  • 您可以執行與 Hive SDK 同步的簡化指導方針。
    • 不必要的實施部分與 Hive Server API 的指導方針被消除。
    • 更新使其更易於理解和實施,而不是使用 Hive Server API。

可用的提供者

如前所述, 身份验证 v4 通过 IdP 验证用户。用户可以使用先前同步的 IdP 或选择其他 IdP 以链接到登录帐户。提供的 IdP 可以根据游戏的不同而设置,Hive 平台根据用户的国家信息向用户提供适当的 IdP

在身份驗證 v4 中提供的 IdP

IdP 描述 曝露條件 / 支援版本
Hive 會員 使用 Hive 會員帳號的電子郵件和密碼進行身份驗證 無特殊條件
Facebook 使用 Facebook 帳號進行身份驗證 如果用戶國家是中國 (CN),則不顯示
Google Play 遊戲 使用 Google Play 遊戲個人資料帳號進行身份驗證(不同於 Google 登入) 僅限 Android。如果用戶國家是中國,則不顯示
Google 使用 Google 電子郵件帳號進行身份驗證(支援 iOS 和其他平台,除了 Android) 如果用戶國家是中國,則不顯示。在 Android 上,Google 和 Google Play 遊戲可以同時顯示 — 以圖標區分: icon
遊戲中心 使用 Apple 遊戲中心帳號進行身份驗證 僅在 iOS 上顯示
QQ 使用騰訊 QQ 帳號進行身份驗證 僅在用戶國家是中國或遊戲語言是簡體中文時顯示。QQ 登入支援從 Hive SDK v4.5.0 開始
VK 使用 VK 帳號進行身份驗證 僅在遊戲語言是俄語時顯示。如果用戶國家是中國,則不顯示。VK 登入支援從 Hive SDK v4.6.0 開始
微信 使用微信帳號進行身份驗證 僅在用戶國家是中國或遊戲語言是簡體中文時顯示。微信登入支援從 Hive SDK v4.6.0 開始
Apple 使用 Apple 帳號進行身份驗證 在 iOS 13+ 上顯示。Apple 登入支援從 Hive SDK v4.11.7.3 開始
SignInWithApple 在 Android 上使用 Apple 帳號進行身份驗證 支援 Android API 21+。支援從 Hive SDK v4.15.6 開始
LINE 使用 LINE 帳號進行身份驗證 在 Android SDK 17 和 iOS 10+ 上顯示。LINE 登入支援從 Hive SDK v4.14.0 開始
Weverse 使用 Weverse 帳號進行身份驗證 在 iOS 12+ 上顯示。Weverse 登入支援從 Hive SDK v4.15.2 開始
華為 使用華為帳號進行身份驗證 僅在 Android 上顯示。華為登入支援從 Hive SDK v4.16.2 開始

用戶識別碼

在身份驗證中,PlayerID 是用來識別用戶的唯一鍵。PlayerID 具有以下特徵:

  • 可以與多種身份提供者(IdP)同步。
  • 一個 PlayerID 不能有超過一個用戶 ID 的同一 IdP
  • 一個 IdP 的用戶 ID 不能在同一遊戲中與多個 PlayerIDs 連結。
  • 儘管是相同的 IdP 帳戶,每個遊戲的 PlayerID 發放方式不同。
  • 與身份驗證 v4 提供的任何 IdP 都未同步的用戶為訪客用戶。

PlayerID 範例

編號 玩家ID 遊戲 Hive 會員 Facebook 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與三個身份提供者同步;FacebookGooglePlay GamesApple Game Center
  • 用戶編號1和2將來自一個遊戲的每個PlayerID與不同的兩個用戶ID的Google Play Games同步。
  • 用戶編號2和3將相同的Hive 會員帳戶與不同兩個遊戲的PlayerIDs同步。
  • 用戶編號4是一個未同步任何IdP的訪客用戶。