本頁說明如何在 Apple 應用程式中啟用 App Check,方法是使用內建的 DeviceCheck 提供者。啟用 App Check 後,只有您的應用程式才能存取專案的 Firebase 資源。請參閱這項功能的總覽。
如要搭配使用 App Check 和自訂供應商,請參閱「實作自訂 App Check 供應商」。
1. 設定 Firebase 專案
如果您尚未將 Firebase 新增至 Apple 專案,請先新增。
在 Apple 開發人員網站上,建立 DeviceCheck 私密金鑰。
在「應用程式」分頁中,註冊應用程式以透過 DeviceCheck 供應商使用 App Check。您必須提供在 Apple 開發人員網站建立的私密金鑰。
您通常需要註冊專案的所有應用程式,因為一旦啟用 Firebase 產品的強制執行功能,只有已註冊的應用程式才能存取產品的後端資源。
選用:設定權杖存留時間 (TTL)。
在應用程式註冊設定中,為供應商核發的 App Check 權杖設定自訂存留時間 (TTL)。您可以將存留時間設為 30 分鐘到 7 天之間的任何值。變更這個值時,請注意下列取捨:
- 安全性:較短的 TTL 可提供更強大的安全性,因為這會縮短遭攔截或外洩的權杖遭到攻擊者濫用的時間範圍。
- 效能:TTL 較短表示應用程式會更頻繁地執行認證。由於應用程式驗證程序每次執行時都會增加網路要求延遲,因此存留時間較短可能會影響應用程式效能。
- 配額和費用:TTL 較短且經常重新認證會更快耗盡配額,如果是付費服務,可能還會增加費用。請參閱「配額與限制」。
預設存留時間為 1 小時,適用於大多數應用程式。請注意,App Check 程式庫會在存留時間 (TTL) 期間的一半時間左右重新整理權杖。
2. 將 App Check 程式庫新增至應用程式
使用 Swift Package Manager 安裝及管理 Firebase 依附元件。
在 Xcode 中開啟應用程式專案,然後依序點選「File」>「Add Packages」,新增 Firebase Apple 平台 SDK 存放區 (
https://github.com/firebase/firebase-ios-sdk),並選擇 FirebaseAppCheck 程式庫。
後續步驟
在應用程式中安裝 App Check 程式庫後,即可開始向使用者發布更新版應用程式。
更新後的用戶端應用程式會開始傳送 App Check 權杖,連同對 Firebase 發出的每項要求一併傳送,但您必須在 Firebase 控制台的「App Check」App Check 部分啟用強制執行功能,Firebase 產品才會要求權杖有效。
監控指標並啟用強制執行功能
不過,啟用強制執行前,請先確認這麼做不會影響現有的合法使用者。另一方面,如果發現應用程式資源有可疑用途,建議盡快啟用強制執行功能。
如要協助您做出這項決定,可以查看所用服務的 App Check 指標:
- 監控 App Check 要求的指標,適用於 Firebase AI Logic、SQL Connect、Realtime Database、Cloud Firestore、Cloud Storage、Authentication、適用於 iOS 的 Google Identity、Maps JavaScript API 和 Places API (新版)。
- 監控 Cloud Functions 的 App Check 要求指標。
啟用 App Check 違規處置
瞭解 App Check 對使用者的影響後,即可啟用 App Check 強制執行:
- 針對 Firebase AI Logic、SQL Connect、Realtime Database、Cloud Firestore、Cloud Storage、Authentication、iOS 適用的 Google 帳戶登入服務、Maps JavaScript API 和 Places API (新版),啟用 App Check 強制執行。
- 為 Cloud Functions 啟用 App Check 強制執行功能。
在偵錯環境中使用 App Check
在註冊應用程式以使用 App Check 後,如果想在 App Check 通常不會歸類為有效的環境中執行應用程式,例如開發期間的模擬器,或來自持續整合 (CI) 環境,您可以建立應用程式的偵錯版本,使用 App Check 偵錯供應器,而非實際的認證供應器。
請參閱「在 Apple 平台上搭配偵錯服務使用 App Check」。