你可以利用 Play Integrity API 協助應用程式和遊戲防範高風險的互動。識別這些互動後,你的應用程式便可採取適當的回應行動以減低被攻擊和濫用的風險。
運作方式
Integrity API 整合 Google Play 的防濫用功能,並提供一系列的完整性訊號,協助 Android 應用程式和遊戲開發人員偵測潛在高風險和欺詐的流量。有關流量可能來自修改版本的應用程式或遊戲、不可靠的裝置或其他不可靠的環境。偵測到有關流量後,你可採取適當的行動來避免受攻擊,以及防範欺詐、詐騙和未經授權存取等濫用行為。
當使用者執行應用程式或遊戲定義的操作時,你的伺服器會指示用戶端程式碼調用 Integrity API。Google Play 伺服器會傳回包含完整性判定結果的加密回應,指出你是否能信任這部裝置和相關二進位程式。你的應用程式之後會將回應轉送至伺服器進行驗證,而該伺服器可決定你的應用程式或遊戲之後應採取的行動。
API 會提供載有以下資訊的完整性判定回應:
- 正版二進位程式:判斷與你互動的二進位程式是否未經修改並可被 Google Play 識別。
- 正版 Play 安裝:判斷目前的使用者帳戶是否已獲授權,以確定使用者是在 Google Play 安裝或購買你的應用程式或遊戲。
- 正版 Android 裝置:判斷你的應用程式是否在支援 Google Play 服務 (或正版 Google Play Games (PC 版)) 的正版 Android 裝置上運作。
- 免除已知惡意軟件:判斷 Google Play Protect 是否已開啟,以及是否偵測到裝置安裝了有風險或危險應用程式。
提示:
- 你可以透過 Google Play 狀態資訊主頁監察 Play Integrity API 和其他 Play 服務的狀態。
- 如要讓應用程式充分運用 Integrity API,請遵循「Android 開發人員」網站文件所載的每項建議做法。
設定和管理 Play Integrity API
為應用程式啟用 Integrity API
如要為應用程式啟用 Integrity API 回應,你需要在「Play 管理中心」連結 Google Cloud 項目。如要連結項目,方法如下:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 選擇 [連結現有項目] 和需要連結的項目。
- 按一下 [連結雲端項目]。
如要開始將 Integrity API 整合至應用程式,你需要執行以下操作:
- 如應用程式使用 Java/Kotlin,你需要安裝 Play Integrity API 最新可用的 Android 程式庫 (存於 Google Maven Repository)。
- 如遊戲使用 Unity,你需要安裝最新發佈版本的 Google Play Plugins for Unity。系統支援 2019.x、2020.x 和較新版本。如果你使用 Unity 2018.x,請安裝 2018.4 或較新版本。如果你使用 Unity 2017.x,請安裝 2017.4.40 或較新版本。系統不支援 Unity 5.x 和較舊版本。
- 內置應用程式和遊戲需要安裝最新版本的 Play Core Native SDK。
你現在可以按照這些載於「Android 開發人員」網站的步驟,開始在應用程式或遊戲中使用 Play Integrity API。
(選用) 自訂 Integrity API 回應
如要瞭解如何設定 API 完整性回應,請前往 Android 開發人員網站。
如何編輯 API 回應:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 捲動至「回應」部分。
- 按一下 [編輯]。
- 選取或取消選取你需要變更的 API 回應旁之選框。
- 按一下 [儲存變更]。
重要事項:即使應用程式已推出正式版本,API 回應的變更一經儲存便會立即生效。在「Play 管理中心」變更 API 回應組合前,請確保伺服器已準備就緒,可接受有關回應。
(選用) 設定傳統版要求
根據預設,Google 負責管理傳統版要求的回應加密設定。然而,你亦可以選擇自行管理回應加密設定。
重要事項:你需要在後端伺服器修改程式碼,才可切換由 Google 管理和自行管理的回應加密設定。
如何自行管理回應加密設定:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 捲動至「傳統版要求」部分。根據預設,「回應加密設定」旁邊會顯示「由 Google 管理」狀態。按一下 [變更]。
- 選擇 [管理和下載我的回應加密密鑰],然後按一下 [儲存變更]。Google 會產生供你下載和管理的回應加密密鑰。你必須更新後端伺服器的邏輯,以使用這些金鑰來解密回應。
- 按照螢幕指示產生 .pem 檔案並上載 .pem 檔案,即可下載 API 金鑰。
- 螢幕會顯示回應加密管理設定已更新的確認訊息。
- 下載新回應加密密鑰並更新後端伺服器,即可在正式版本中運用金鑰解密回應。返回「應用程式完整性」頁面的「Integrity API」分頁,以讓 Google Play 開始使用新回應加密密鑰解密回應,而非使用舊金鑰。有關變更立即生效。
如果你想從自行管理還原至由 Google 管理:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 捲動至「傳統版要求」部分。由於你之前曾變更設定,因此「回應加密設定」旁邊顯示「自行管理」狀態。按一下 [變更]。
- 選擇 [讓 Google 管理我的回應加密設定 (建議)],然後按一下 [儲存變更]。Google 會產生和管理你的回應加密密鑰,後端伺服器則會調用 Google Play 的伺服器來解密回應。
測試 Play Integrity API 整合情況
如要測試 Integrity API 整合,可以設定 Gmail 帳戶清單。首先,請確保測試員可存取相關版本。將應用程式發佈至內部測試發佈途徑或打算進行測試的發佈途徑,然後按照指示透過電郵地址管理測試員或使用「Google 網上論壇」,讓測試員可存取你的發佈版本。
如何設定測試:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 捲動至「測試」部分。
- 按一下 [建立新測試]。
- 選取電郵清單或建立新清單。
- 按一下 [建立測試]。
針對經由 Integrity API 對話框的使用者自訂商店資訊
你可以使用 Integrity API 補救對話框,提示透過非正式渠道獲取應用程式的使用者到 Google Play 下載。使用者輕按該對話框後,便會被重新導向至你的商店資訊,然後可以在該頁面輕按安裝按鈕 (或購買按鈕,或更新按鈕),將應用程式加到其 Play 媒體庫中。
你可以針對輕按 Integrity API 補救對話框的訪客自訂商店資訊資產,包括應用程式名稱、圖示、描述和圖像資產。如要針對經由 Integrity API 對話框的使用者自訂商店資訊,方法如下:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 捲動至「自訂商店資訊」部分。
- 按一下 [建立商店資訊]。
- 按照「建立自訂商店資訊」頁面上的指示操作,然後按一下 [儲存]。
你也可以直接在「自訂商店資訊」頁面建立適用於 Integrity API 對話框的自訂商店資訊:
- 開啟「Play 管理中心」並前往「自訂商店資訊」頁面 (按一下 [拓展] > [自訂商店資訊])。
- 按一下 [建立商店資訊],並選擇建立新的商店資訊或複製現有商店資訊,然後按一下 [下一步]。
- 在「商店資訊詳情」下找出「目標對象」部分。
- 選取 [根據網址],並在文字框內輸入「playintegrity」。
- 輸入所有其他資料,然後按一下 [儲存]。
提示:網址參數「playintegrity」是保留給完整性深層連結的特殊關鍵字,因此在設定自訂商店資訊時必須準確輸入這個關鍵字。
提高 Play Integrity API 每日要求次數上限
根據預設,應用程式每日可向 Integrity API 提出最多 10,000 次要求。
如何查看應用程式每日提出要求的次數:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 查看你的每日要求次數。如要查看更多資料、變更時段及套用篩選器,按一下 [查看 Integrity API 報告]。
如何查看應用程式的每日要求次數上限:
- 開啟「Play 管理中心」並前往「應用程式完整性」頁面 (按一下 [發佈版本] > [應用程式完整性])。
- 捲動至「Play Integrity API」部分。
- 按一下 [設定]。
- 查看你的使用情況級別。
你可以要求提升每日 10,000 個要求的上限。如要符合資格,你必須:
- 確定執行正確的 API 邏輯,包括重試。
- 在 Google Play 以及任何其他發佈渠道發佈應用程式。
如要提高每日要求次數上限,請填妥此表格。