跳轉至

按 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 登入 strings.xml hive_config.xml 不支援 不支援 不支援
使用 WeChat 登入 hive_config.xml hive_config.xml 不支援 不支援 不支援
使用 LINE 登入 hive_config.xml hive_config.xml 不支援 不支援 不支援
使用 Weverse 登入 hive_config.xml 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 控制台中的每個 AppID。

安全密鑰發放

為了增強服務之間的身份驗證安全性,您必須從 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 自動配置的 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 playAppId="123456789012" serverClientId="123456789012-abc.apps.googleusercontent.com" />

        <!-- 使用 QQ 登入 -->
        <qq id="1234567890" />

        <!-- 使用微信登录 -->
        <wechat id="wx12345cf6c789c0f1" secret="abcdefg" paymentKey="abc123def456xyz789"/>

        <!-- 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 id="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" />

        <!-- 使用 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>
Note

當使用 Unreal Engine 或 Unity 時,您可以使用配置編輯器(Unity, Unreal)輸入鍵值,而無需直接創建或編輯 hive_config.xml 文件。


按照以下指示,根據您想要使用的 IdP,將身份驗證設置添加到hive_config.xml文件中。

使用 Google Play 登入 (Google Play 遊戲)

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK common settings omitted -->

    <!-- Hive SDK 認證設定: 開始 -->
    <providers>
        <!-- 使用 Google Play 登入 (Google Play 遊戲) -->
        <googleplaygames playAppId="123456789012" serverClientId="123456789012-abc.apps.googleusercontent.com" />
    </providers>
    <!-- Hive SDK 認證設定: 結束 -->
</properties>

Playappid (Android)

設定從Google Cloud Console發出的Android類型客戶端ID。



伺服器客戶端ID (Android)

設置從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標籤中輸入值。

<properties>
    <!-- Hive SDK 通用設置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Apple 登入 -->    
        <signinwithapple serviceid="com.sample.your" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

服務識別碼 (Android, iOS, Windows)

設定由Apple 開發者中心發出的服務 ID。設置完成後,您可以在 Android 和 Windows 上使用您的 Apple 帳戶登錄。

使用 Google 登入

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Google 登入 (Google 登入) -->    
        <google playAppId="123456789012" serverClientId="123456789012-abc.apps.googleusercontent.com" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>
<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Google 登入 (Google 登入) -->    
        <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 Sign-In) -->    
        <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 (Android, 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標籤中輸入值。

<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 QQ 登入 -->    
        <qq id="1234567890" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

身份識別 (Android, iOS)

設置通過QQ服務的遊戲應用註冊請求 (connect.qq.com) 發放的QQ APP ID。註冊應用時,中國公民必須提出特定的審核要求。

使用 VK 登入

參考以下範例以在hive_config.xml檔案的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 公共设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 VK 登入 -->    
        <vk id="1234567" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>
Warning

VK IdP 提供的登錄方法已更改。因此,如果您在 2024 年 6 月之後在 VK 控制台中註冊新的應用設置,則無法使用 Hive SDK 提供的 VK 登錄。預計在 2025 年 4 月至 5 月之間,Hive SDK v4 25.2.0 或更高版本將支持更改的登錄方法。

Id (iOS)

設置從VK服務頁面發出的VK ID

使用微信登入

請參考以下範例以在hive_config.xml檔案的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設置: 開始 -->
    <providers>
        <!-- 使用微信登錄 -->    
        <wechat id="wx12345cf6c789c0f1" secret="abcdefg" />
    </providers>
    <!-- Hive SDK 認證設置: 結束 -->
</properties>

身分證 (Android, iOS)

微信控制台中设置游戏应用标识符 APP ID。


秘密 (Android, iOS)

設定可以在微信控制台中檢查的AppSecret


使用 LINE 登入

參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 公共設置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 LINE 登入 -->    
        <line channelId="1234567890" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

Channelid (Android, iOS)

Line控制台的提供者部分的基本设置中设置可以找到的频道ID。


使用 weverse 登入

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 公共設置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Weverse 登入 -->    
        <weverse clientId="abcdefg" isTest="false" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>
<properties>
    <!-- Hive SDK 公共設置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Weverse 登入 -->    
        <weverse clientId="abcdefg" />
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

客戶端識別碼 (Android, iOS, Windows)

設定 Weverse 登入的唯一識別碼 Client ID。Weverse 的 Client ID 必須通過 Weverse 聯絡 發放。

Istest (Android, iOS)

設置是否連接到 Weverse 測試伺服器。

  • true: 連接到 Weverse 測試伺服器。請在開發期間與 Weverse 負責人討論後使用。
  • false: 連接到 Weverse 生產伺服器。

使用 Steam 登入

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 公共設置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Steam 登入 -->    
        <steam realm="https://your-app.com"/>
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

Realm (Android, iOS, Windows)

設定使用Steam OpenID認證中的realm資訊的遊戲開發團隊所擁有的網域。輸入請求登錄的服務的網域(例如,https://your-app.com)。您設定的值也會顯示在Steam登錄頁面上。預設為https://withhive.com。您必須輸入有效的網域,如果無效,登錄可能無法進行。

使用 x 登入

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 X 登入 -->    
        <x clientId="ABCDEFG"/>
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

客戶端ID (Android, iOS, Windows)

設定X 控制台 (X 開發者入口網站)的 OAuth 2.0 客戶端 ID。


使用 Telegram 登入

請參考以下範例以在hive_config.xml文件的providers標籤中輸入值。

<properties>
    <!-- Hive SDK 通用设置省略 -->

    <!-- Hive SDK 認證設定:開始 -->
    <providers>
        <!-- 使用 Telegram 登入 -->    
        <telegram botId="123456789" botDomain="https://auth.qpyou.cn"/>
    </providers>
    <!-- Hive SDK 認證設定:結束 -->
</properties>

Botid (Android, iOS, Windows)

設定Telegram登錄服務的botId。要獲取botId,請參考Telegram官方文檔Hive 認證Idp機器人設置以進行Telegram登錄。使用Telegram登錄時,botId是必需的值。

Botdomain (Android, iOS, Windows)

设置 Telegram 登录服务的 botDomain。要获取 botDomain,请参考 Telegram 官方文档Hive 身份验证 Idp 机器人设置以进行 Telegram 登录。如果您未输入 botDomain,则将设置为默认值 https://auth.qpyou.cn。此域名将在 Telegram 登录屏幕上显示。