按 IdP 輸入密鑰
要使用 Hive SDK 身份驗證功能,您需要所有開發引擎中每個 IdP(身份提供者)提供的密鑰值。本文件指導您如何將從每個 IdP 控制台發出的密鑰值輸入到 Hive 控制台 和 hive_config.xml 文件中。
概述¶
要使用任何身份提供者(IdP),您需要從 IdP 控制台獲取發佈的密鑰值,並將其輸入到 Hive 控制台或 hive_config.xml 文件中(或兩者)。例如,如果開發人員希望在 Windows 環境中為用戶提供 Google 和 Apple 登錄,他們必須從 Google 控制台和 Apple 控制台獲取密鑰值,並將密鑰輸入到 Hive 控制台和 hive_config.xml 文件中。請參考以下內容以了解每個 IdP 和操作系統的密鑰值輸入位置。
- hive_config.xml
- 輸入您想要在hive_config.xml文件中使用的IdP控制台獲得的密鑰值
- 在Unity或Unreal Engine環境中,可以在配置編輯器中輸入
- Hive 控制台
- 輸入您想要在Hive控制台中使用的IdP控制台獲得的密鑰值
- Hive 控制台, hive_config.xml
- 需要在Hive 控制台和hive_config.xml中輸入密鑰值
- 排除在設置之外
- 無需在Hive 控制台和hive_config.xml中輸入密鑰值
- 不支持
- 不支持的IdP
IdP / OS | Android | iOS | Windows | macOS | 網頁登入 |
---|---|---|---|---|---|
使用 Google Play 登入 | Hive 控制台, hive_config.xml | 不支援 | 不支援 | 不支援 | 不支援 |
Hive 登入 | 排除設定 | 排除設定 | 排除設定 | 排除設定 | Hive 控制台 |
使用 Facebook 登入 | hive_config.xml | hive_config.xml | Hive 控制台, hive_config.xml | Hive 控制台 | Hive 控制台 |
以訪客身份登入 | 排除設定 | 排除設定 | 不支援 | 不支援 | 不支援 |
使用 Apple 登入 | Hive 控制台, hive_config.xml | hive_config.xml | Hive 控制台, hive_config.xml | Hive 控制台 | Hive 控制台 |
使用 Google 登入 | hive_config.xml | hive_config.xml | Hive 控制台, hive_config.xml | Hive 控制台 | Hive 控制台 |
使用 QQ 登入 | hive_config.xml | hive_config.xml | 不支援 | 不支援 | 不支援 |
使用 VK 登入 | hive_config.xml | hive_config.xml | 不支援 | 不支援 | 不支援 |
使用 WeChat 登入 | hive_config.xml | hive_config.xml | 不支援 | 不支援 | 不支援 |
使用 LINE 登入 | hive_config.xml | hive_config.xml | hive_config.xml | 不支援 | 不支援 |
使用 Weverse 登入 | hive_config.xml | hive_config.xml | 不支援 | 不支援 | 不支援 |
使用 HUAWEI ID 登入 | Hive 控制台 | 不支援 | 不支援 | 不支援 | 不支援 |
使用 Steam 登入 | Hive 控制台, hive_config.xml | Hive 控制台, hive_config.xml | Hive 控制台, hive_config.xml | Hive 控制台 | 不支援 |
使用 X 登入 | hive_config.xml | hive_config.xml | hive_config.xml | 不支援 | 不支援 |
使用 Telegram 登入 | Hive 控制台, hive_config.xml | Hive 控制台, hive_config.xml | hive_config.xml | 不支援 | 不支援 |
Hive 在控制台輸入¶
在遊戲中提供登錄功能時,您需要確定要公開的 IdP 以及公開的順序。為此,請按照順序使用 Hive 控制台來 選擇登錄類型、變更登錄順序,並在 Hive 控制台中註冊身份驗證密鑰。
安全金鑰發放¶
為了增強服務之間的身份驗證安全性,您必須從 Hive 控制台 > 安全金鑰設定獲取安全金鑰。
Warning
如果您未獲得安全密鑰,應用程式用戶將無法登錄應用程式。
hive_config.xml 的輸入¶
從 IdP 控制台獲取金鑰值並將其輸入到 hive_config.xml 文件中。以下是假設使用所有 IdP 的示例代碼。
<properties>
<providers>
<!-- 使用 Google Play 登入 (Google Play 遊戲) -->
<googleplaygames playAppId="123456789012" serverClientId="123456789012-abc.apps.googleusercontent.com" />
<!-- 使用 Facebook 登入 (Facebook) -->
<!-- 以下的 Facebook 代碼是如何設置額外權限(例如 user_friends、user_gender)的一個示例,這些權限超出了由 Hive SDK 自動設置的電子郵件和 public_profile 權限。 -->
<!-- 當使用 hive_config.xml 時,僅應將遊戲公司所需的權限插入 <permission> 元素中。 -->
<facebook>
<permissions>
<permission name="user_friends" />
<permission name="user_gender" />
</permissions>
</facebook>
<!-- 使用 Apple 登入 -->
<signinwithapple serviceid="com.sample.your" />
<!-- 使用 Google 登入 (Google Sign-In) -->
<google playAppId="123456789012" serverClientId="123456789012-abc.apps.googleusercontent.com" />
<!-- 使用 QQ 登入 -->
<qq id="1234567890" />
<!-- 使用微信登录 -->
<wechat id="wx12345cf6c789c0f1" secret="abcdefg" />
<!-- LINE 登入 -->
<line channelId="1234567890" />
<!-- 使用 Weverse 登入 -->
<weverse clientId="abcdefg" />
<!-- 使用 Steam 登入 -->
<steam realm="https://your-app.com"/>
<!-- 使用 X 登入 -->
<x clientId="ABCDEFG"/>
<!-- 使用 Telegram 登入 (Telegram) -->
<telegram botId="123456789" botDomain="https://auth.qpyou.cn"/>
</providers>
</properties>
<properties>
<providers>
<!-- 使用 Facebook 登入 (Facebook) -->
<!-- 以下的 Facebook 代碼是一個範例,展示如何設置額外的權限(例如 user_friends、user_gender),超出由 Hive SDK 自動配置的 email 和 public_profile 權限。 -->
<!-- 實際使用 hive_config.xml 時,僅應插入遊戲公司所需的權限到 <permission> 元素中。 -->
<facebook>
<permissions>
<permission name="user_friends" />
<permission name="user_gender" />
</permissions>
</facebook>
<!-- 使用 Apple 登入 -->
<signinwithapple serviceid="com.sample.your" />
<!-- 使用 Google 登入 (Google Sign-In) -->
<google serverClientId="123456789012-abc.apps.googleusercontent.com" reversedClientId="com.googleusercontent.apps.123456789012-abc" />
<!-- 使用QQ登录 -->
<qq id="1234567890" />
<!-- 使用 VK 登入 -->
<vk appId="1234567" />
<!-- 使用微信登录 -->
<wechat id="wx12345cf6c789c0f1" secret="abcdefg" />
<!-- 使用LINE登入 -->
<line channelId="1234567890" />
<!-- 使用 Weverse 登入 -->
<weverse clientId="abcdefg" />
<!-- 使用 Steam 登入 -->
<steam realm="https://your-app.com"/>
<!-- 使用 X 登入 -->
<x clientId="ABCDEFG"/>
<!-- 使用 Telegram 登入 -->
<telegram botId="123456789" botDomain="https://auth.qpyou.cn"/>
</providers>
</properties>
<properties>
<providers>
<!-- 使用 Facebook 登入 (Facebook) -->
<!-- 以下 Facebook 代碼是如何設置額外權限(例如 user_friends、user_gender)的一個示例,這些權限超出了 Hive SDK 自動設置的 email 和 public_profile 權限。 -->
<!-- 當使用 hive_config.xml 時,遊戲公司應僅將所需的權限插入 <permission> 元素中。 -->
<facebook id="1809615065921877">
<permissions>
<permission name="user_friends" />
<permission name="user_gender" />
</permissions>
</facebook>
<!-- 使用 Apple 登入 -->
<signinwithapple serviceid="com.sample.your" />
<!-- 使用 Google 登入 (Google Sign-In) -->
<google serverClientId="123456789012-abc.apps.googleusercontent.com" deviceFlowClientId="331526026701-gn1abq1ev23nqj7rdvvlaamf7ii4f3u9.apps.googleusercontent.com" />
<!-- 使用 Steam 登入 (Steam) -->
<steam realm="https://your-app.com"/>
<!-- 使用 X 登入 -->
<x clientId="ABCDEFG"/>
<!-- 使用 Telegram 登入 -->
<telegram botId="123456789" botDomain="https://auth.qpyou.cn"/>
</providers>
</properties>
按照以下说明,将身份验证设置添加到hive_config.xml文件中,以符合您想要使用的IdP。
使用 Google Play 登入 (Google Play 遊戲)¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
Playappid (安卓)¶
從Google Cloud Console發出的Android類型客戶端ID。
Serverclientid (安卓)¶
設置從Google Cloud Console獲得的Web 應用程序客戶端 ID。
使用 Facebook 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
<properties>
<!-- Hive SDK 公共設置省略 -->
<!-- Hive SDK 認證設定:開始 -->
<providers>
<!-- 使用 Facebook 登入 (Facebook) -->
<!-- 以下的 Facebook 代碼是如何設置額外權限 (例如 user_friends, user_gender) 的範例,這些權限超出了 Hive SDK 自動設置的 email 和 public_profile 權限。 -->
<!-- 在實際使用 hive_config.xml 時,僅應插入遊戲公司所需的權限作為 <permission> 元素。 -->
<facebook>
<permissions>
<permission name="user_friends" />
<permission name="user_gender" />
</permissions>
</facebook>
</providers>
<!-- Hive SDK 認證設定:結束 -->
</properties>
<properties>
<!-- Hive SDK 通用设置省略 -->
<!-- Hive SDK 認證設定:開始 -->
<providers>
<!-- 使用 Facebook 登入 (Facebook) -->
<!-- 以下 Facebook 代碼是如何設置額外權限(例如 user_friends、user_gender)的一個範例,這些權限超出了 Hive SDK 自動設置的 email 和 public_profile 權限。 -->
<!-- 當使用 hive_config.xml 時,僅應插入遊戲公司所需的權限作為 <permission> 元素。 -->
<facebook id="1809615065921877">
<permissions>
<permission name="user_friends" />
<permission name="user_gender" />
</permissions>
</facebook>
</providers>
<!-- Hive SDK 認證設定:結束 -->
</properties>
Id (windows)¶
Hive v4 這是使用 Unity 在 Windows 上使用 Facebook 登入功能的應用程式 ID。您可以在修改應用程式設定後,在 Meta 應用程式儀表板上檢查應用程式 ID。應用程式 ID 可以在這裡找到。
權限 (android, ios, windows)¶
使用 Facebook SDK 时,如果您需要超出 Hive 设置的默认电子邮件权限(访问 Facebook 帐户电子邮件地址)和 public_profile(访问 Facebook 公开资料)的额外权限,您可以在 Facebook 控制台中请求所需的权限,并在权限字段中设置这些权限。在 Hive 使用 Facebook 登录时,登录请求将包括在权限字段中设置的权限。
使用 Apple 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
服務ID (android, ios, windows)¶
設置由Apple 開發者中心發出的服務 ID。設置完成後,您可以在 Android 和 Windows 上使用您的 Apple 帳戶登錄。
使用 Google 登入¶
參考以下範例在hive_config.xml文件的providers
標籤中輸入值。
<properties>
<!-- Hive SDK common settings omitted -->
<!-- Hive SDK 認證設定:開始 -->
<providers>
<!-- 使用 Google 登入 (Google Sign-In) -->
<google serverClientId="123456789012-abc.apps.googleusercontent.com" reversedClientId="com.googleusercontent.apps.123456789012-abc" />
</providers>
<!-- Hive SDK 認證設定:結束 -->
</properties>
<properties>
<!-- Hive SDK 公共設置省略 -->
<!-- Hive SDK 身份验证设置:开始 -->
<providers>
<!-- 使用 Google 登录(Google 登录) -->
<google serverClientId="123456789012-abc.apps.googleusercontent.com" deviceFlowClientId="331526026701-gn1abq1ev23nqj7rdvvlaamf7ii4f3u9.apps.googleusercontent.com" />
</providers>
<!-- Hive SDK 身份验证设置:结束 -->
</properties>
Playappid (android)¶
設置從Google Cloud Console發出的Android類型客戶端ID。
伺服器客戶端ID (安卓, iOS, Windows)¶
設置從Google Cloud Console發出的網路應用程式客戶端ID。
反向客戶端ID (ios)¶
設定從 Google Cloud 控制台發出的反向客戶端 ID。請參考 iOS Google 登入的反向客戶端 ID 文件頁面 以獲取更多信息。
Deviceflowclientid (windows)¶
設置從Google Cloud Console發出的客戶端類型的客戶端ID。
使用 QQ 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
身分 (安卓, 蘋果)¶
設置通過QQ服務的遊戲應用註冊請求 (connect.qq.com) 發出的QQ APP ID。註冊應用時,中國公民必須提出特定的審核要求。
使用 VK 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
Id (安卓, 蘋果)¶
設定從VK服務頁面發出的VK應用程序ID。
使用微信登录¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
身份 (安卓, iOS)¶
在微信控制台中设置游戏应用程序标识符 APP ID。
秘密 (安卓, iOS)¶
使用 LINE 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
Channelid (android, ios)¶
設定可以在LINE控制台的提供者部分的基本設置中檢查的通道ID。
使用 weverse 登入¶
請參考以下範例以在hive_config.xml檔案的providers
標籤中輸入值。
客戶端 ID (android, ios, windows)¶
設置Weverse登錄的唯一識別碼客戶端ID。對於Weverse的客戶端ID,必須通過Weverse聯繫發放。
Istest (安卓, ios)¶
設置是否連接到 Weverse 測試伺服器。
true
: 訪問 Weverse 測試伺服器。請在開發過程中與 Weverse 代表討論後使用。false
: 訪問 Weverse 生產伺服器。
使用 Steam 登入¶
請參考以下範例以在hive_config.xml文件的providers
標籤中輸入值。
領域 (android, ios, windows)¶
將遊戲開發團隊擁有的域名設置為用作Steam OpenID 認證中的realm
信息。輸入請求登錄的服務的域名(例如,https://your-app.com)。設置的值也會顯示在Steam登錄頁面上。默認為https://withhive.com。您必須輸入有效的域名,如果無效,則可能無法繼續登錄。
使用 x 登入¶
請參考以下範例,在hive_config.xml文件的providers
標籤中輸入值。
客戶端ID (安卓, iOS, Windows)¶
設定X 控制台 (X 開發者入口網站)的 OAuth 2.0 客戶端 ID。
使用 Telegram 登入¶
請參考以下範例以在hive_config.xml檔案的providers
標籤中輸入值。
Botid (安卓, iOS, Windows)¶
設定 Telegram 登入服務的 botId
。要獲取 botId
,請參考 官方 Telegram 文檔 或 Hive 認證 Idp 機器人設置以進行 Telegram 登入。使用 Telegram 登入時,botId
是必需的值。
Botdomain (安卓, ios, windows)¶
設定 Telegram 登入服務的 botDomain
。要獲取 botDomain
,請參考 Telegram 官方文檔 或 Hive 認證 Idp 機器人設置以進行 Telegram 登入。如果您不輸入 botDomain
,則將默認為 https://auth.qpyou.cn。該域名地址將顯示在 Telegram 登入螢幕上。