開始在 Apple 平台上,搭配使用 App Check 和 DeviceCheck

本頁面說明如何使用內建的 DeviceCheck 供應器,在 Apple 應用程式中啟用 App Check。啟用 App Check 有助於確保只有您的應用程式可以存取專案的 Firebase 資源。查看這項功能的總覽。

如要搭配自訂供應器使用 App Check,請參閱「實作自訂 App Check 供應器」。

1. 設定 Firebase 專案

  1. 如果您尚未將 Firebase 新增至 Apple 專案,請先新增。

  2. 在 Apple 開發人員網站上,建立 DeviceCheck 私密金鑰。

  3. 在 Firebase 控制台中,依序前往「Security」(安全性) >「App Check」。

  4. 在「Apps」(應用程式) 分頁中,註冊應用程式,以便透過 DeviceCheck 供應商使用 App Check。您必須提供在 Apple 開發人員網站建立的私密金鑰。

    您通常需要註冊專案的所有應用程式,因為一旦啟用 Firebase 產品的強制執行功能,只有註冊的應用程式才能存取產品的後端資源。

  5. 選用:設定權杖存留時間 (TTL)。

    在應用程式註冊設定中,為供應商核發的 App Check 權杖設定自訂存留時間 (TTL)。您可以將存留時間設為 30 分鐘到 7 天之間的任何值。變更這個值時,請注意下列取捨:

    • 安全性:存留時間越短,安全性越高,因為這會縮短外洩或遭攔截的權杖可能遭攻擊者濫用的時間。
    • 效能:存留時間越短,應用程式執行認證的頻率就越高。由於每次執行應用程式認證程序時,都會增加網路要求的延遲時間,因此 TTL 較短可能會影響應用程式的效能。
    • 配額和費用:存留時間較短和頻繁重新認證會更快耗盡配額,如果是付費服務,費用可能會更高。請參閱「配額與限制」。

    預設存留時間為 1 小時,適用於大多數應用程式。請注意,App Check 程式庫會在存留時間約過一半時重新整理權杖。

2. 將 App Check 程式庫新增至應用程式

  1. 使用 Swift Package Manager 安裝及管理 Firebase 依附元件。

    在 Xcode 中開啟應用程式專案,依序點選「File」>「Add Packages」,新增 Firebase Apple 平台 SDK 存放區 (https://github.com/firebase/firebase-ios-sdk),然後選擇「FirebaseAppCheck」程式庫。

後續步驟

在應用程式中安裝 App Check 程式庫後,請開始向使用者發布更新後的應用程式。

更新後的用戶端應用程式會開始在向 Firebase 提出的每項要求中,一併傳送 App Check 權杖,但 Firebase 產品不會要求權杖必須有效,除非您在 Firebase 控制台的「App Check」部分啟用強制執行功能。

監控指標並啟用強制執行

不過,在啟用強制執行之前,請務必確認這樣做不會干擾現有的合法使用者。另一方面,如果發現應用程式資源有可疑的使用情形,建議您盡快啟用強制執行功能。

為協助您做出這項決定,您可以查看所用服務的 App Check 指標:

啟用App Check違規處置

瞭解 App Check 對使用者的影響,並準備好繼續操作後,即可啟用 App Check 強制執行:

在偵錯環境中使用 App Check

為應用程式註冊 App Check 後,如果您想在 App Check 通常不會歸類為有效的環境中執行應用程式,例如開發期間的模擬器,或持續整合 (CI) 環境,可以建立應用程式的偵錯版本,使用 App Check 偵錯服務,而非實際認證服務。

請參閱「在 Apple 平台搭配偵錯服務使用 App Check」。