本頁面說明如何設定應用程式或遊戲來使用 Play Integrity API。 具體來說,您需要啟用來自這個 API 的回應,並將這個 API 整合至應用程式中。
您也可以選擇設定回應加密管理策略,並管理 API 傳送至應用程式的回應組合。
必要條件
如要將 Play Integrity API 整合到應用程式中,請根據開發環境採取下列其中一種做法:
- 如果應用程式使用 Kotlin 或 Java 程式設計語言,請透過 Google 的 Maven 存放區安裝適用於 Play Integrity API 的最新版 Android 程式庫。
- 如果是 Unity 遊戲,請安裝適用於 Unity 1.7.0 或以上版本的 Google Play 外掛程式。 所有 2019.x、2020.x 版本及以上版本都在支援範圍內。如果使用 Unity 2018.x,請安裝 2018.4 或以上版本。如果使用 Unity 2017.x,請安裝 2017.4.40 或以上版本。請注意,系統不支援 Unity 5.x 及以下版本。
- 如果是原生應用程式和遊戲,請安裝 Play Core Native SDK 1.11.0 或以上版本。
啟用 Play Integrity 回應
如要使用 Play Integrity API,您必須將應用程式連結至 Google Cloud 專案,以便啟用 Play Integrity API 回應。然後,按照操作說明將 API 整合到應用程式中。
Google Play 應用程式
在 Play 管理中心,前往左選單的「版本」部分。依序前往「設定」>「應用程式完整性」。選取「Integrity API」分頁標籤,即可開始使用。
在 Google Play 以外管道發行的應用程式
您不必透過 Google Play 管理中心,即可為應用程式啟用 Play Integrity API 回應。如要這樣做,請完成下列步驟:
- 從 Google Cloud Console 選擇現有專案或建立新專案。
- 前往「API 和服務」,然後選取「啟用 API 和服務」。
- 搜尋 Play Integrity API。選取這個項目,然後選取「啟用」。
啟用 API 後,即可將 Play Integrity API 整合到應用程式中。
使用 Play Integrity API 的 SDK
如要在 SDK 中使用 Play Integrity API,必須符合下列條件:
- 您必須將 SDK 連結至 Google Cloud 專案,並啟用 Play Integrity API。
- 如要接收及解密 Integrity API 回應,您必須在要求中加入 Cloud 專案編號。您可以在 Google Cloud Console 的「專案資訊」中找到這個編號。
- 呼叫 API 的要求應用程式必須為其應用程式啟用 Play Integrity API。當 Google Play 提供的應用程式使用您的 SDK 時,您對 Play Integrity API 的要求會自動計入應用程式的 API 用量。
在 Google Cloud Console 中選擇專案後,請前往「API 和服務」,並選取「啟用 API 和服務」。搜尋 Play Integrity API。選取這個 API,然後選取「啟用」。啟用 API 後,即可按照將 Play Integrity API 整合到應用程式中的指示為 SDK 執行相關操作。
設定回應的加密和解密方式 (選用)
根據預設,Google Play 的伺服器會管理應用程式在您與 Play Integrity API 互動時採用的回應加密方式。我們建議使用這個預設選項,但您也可以選擇管理及下載回應加密金鑰。
讓 Google 管理您的回應加密 (預設和建議)
為了給您的應用程式提供安全保障,建議您允許 Google 產生及管理回應加密金鑰。您的後端伺服器會呼叫 Google Play 的伺服器來解密回應。
管理及下載我的回應加密金鑰
如果您想要在本機安全伺服器環境中解密完整性判定結果,可以管理及下載回應加密金鑰。
請記得,不要在用戶端應用程式中解密或驗證收到的權杖,也不要將任何解密金鑰提供給用戶端應用程式。如要管理和下載回應加密金鑰,您必須使用 Play 管理中心,而且您的應用程式必須在 Google Play 上架。
在 Google 代管和自行管理回應加密金鑰之間切換
如果目前由 Google 管理回應加密,但您想改用自行管理和下載回應加密金鑰,請按照下列步驟操作:
- 登入 Play 管理中心。
- 選取使用 Play Integrity API 的應用程式。
- 在左選單的「版本」區段中,依序點選「設定」>「應用程式完整性」。
- 前往「Integrity API」分頁標籤。
- 在頁面的「設定」區段中,按一下「回應加密金鑰」旁邊的「變更」。
- 在隨即顯示的視窗中,按一下「管理及下載我的回應加密金鑰」。
- 按照操作說明上傳公開金鑰。
- 當視窗顯示上傳成功後,按一下「儲存」,系統就會自動下載加密金鑰。
- 變更伺服器邏輯,讓系統透過您的回應加密金鑰,在本機安全伺服器環境中解密及驗證完整性權杖。
- (選用) 如果您自行管理回應加密金鑰,您的應用程式仍可改回使用 Google Play 伺服器來解密及驗證回應。
如果您是自行管理回應加密金鑰,但希望改為讓 Google 管理回應加密,請按照下列步驟操作:
- 變更伺服器邏輯,以便只在 Google 伺服器上進行解密及驗證。
- 登入 Play 管理中心。
- 選取使用 Play Integrity API 的應用程式。
- 在左選單的「版本」區段中,依序點選「設定」>「應用程式完整性」。
- 前往「Integrity API」分頁標籤。
- 在頁面的「設定」區段中,按一下「回應加密金鑰」旁邊的「變更」。
- 在隨即顯示的視窗中,按一下「讓 Google 管理我的回應加密 (建議)」。
- 按一下「儲存變更」。
在 Play 管理中心變更回應加密管理策略之前,請確認您的伺服器已正確設定,以便解密及驗證完整性權杖,或者已在 Google Play 伺服器上正確設定。
設定 API 回應 (選用)
Play Integrity API 在完整性判定結果中提供下列主要信號:
- 應用程式完整性。
- 帳戶詳細資料。
- 裝置完整性。
您可以修改應用程式收到的一組裝置完整性回應。選擇接收多個標籤,您就能根據不同層級的裝置可信度建立強制執行策略。如要這麼做,請按照 Play 管理中心的指示操作。這個選項僅適用於在 Google Play 上架的應用程式。
將 Play Core 整合至應用程式
如要將 Play Integrity API 整合到您的應用程式中,請遵循下列某一部分中列出的平台專屬操作說明。
Kotlin 或 Java
如果您使用的是本機 Maven 存放區,請將下列依附元件新增至應用程式的 build.gradle
檔案:
implementation com.google.android.play:integrity::LATEST_VERSION
Unity
原生
請參閱 Play Core Native 的開發環境設定指南。