Firebase App Check

App Check 可防止未經授權的用戶端存取您的後端資源,藉此防止 API 資源遭到濫用。此服務能與 Google 服務 (包括 Firebase 和 Google Cloud 服務) 和您自己的 API 搭配運作,確保您的資源安全無虞。

透過 App Check,執行應用程式的裝置會使用應用程式或裝置認證提供者,通過下列其中一項或兩項認證:

  • 正版應用程式發出的要求
  • 要求來自未經竄改的真實裝置

此認證會附加至應用程式對指定 API 發出的每個要求。強制執行 App Check 後,系統會拒絕沒有有效認證的用戶端要求,以及來自未經您授權的應用程式或平台的任何要求。

App Check 內建支援功能,可將下列服務做為認證提供者:

如果這些方法已不滿足您的需求,您也可以使用第三方認證提供者或自己的認證技術,自行實作服務。

App Check 可與下列 Google 服務搭配使用:

支援的 Google 服務
即時資料庫
Cloud Firestore
Cloud Storage
Cloud Functions (可呼叫的函式)
驗證 (Beta 版;必須升級至透過 Identity Platform 使用 Firebase 驗證)
iOS 版 Google Identity (Beta 版)
Vertex AI for Firebase (預先發布版)

您也可以使用 App Check 保護非 Google 的後端資源。

準備好開始使用了嗎?

開始

運作原理

如果您為服務啟用 App Check 並在應用程式中加入用戶端 SDK,就會定期執行下列作業:

  1. 應用程式會與您選擇的供應商互動,取得應用程式或裝置的真實性認證 (或兩者皆有,視供應商而定)。
  2. 認證會傳送至 App Check 伺服器,該應用程式使用透過應用程式註冊的參數驗證認證的有效性,並將具有到期時間的 App Check 權杖傳回應用程式。這個權杖可能會保留已驗證認證資料的部分資訊。
  3. App Check 用戶端 SDK 會快取應用程式中的權杖,準備與應用程式對受保護服務提出的任何要求一起傳送。

受 App Check 保護的服務只會接受具備目前有效 App Check 權杖的要求。

App Check 的安全性有多大?

App Check 會根據認證提供者的強度,判斷應用程式或裝置的真實性。這麼做可以防止導向後端的部分濫用行為媒介 (但並非全部)。使用 App Check 無法保證能完全消除所有濫用行為,不過與 App Check 整合後,是保護後端資源濫用行為的重要步驟。

App Check 和 Firebase 驗證是應用程式安全性故事的相輔相成的一部分。Firebase 驗證提供使用者驗證機制,可保護使用者;App Check 則提供應用程式或裝置驗證的認證,可保護你和開發人員。App Check 會要求 API 呼叫必須包含有效的 App Check 權杖,以保護 Google 後端資源和自訂後端的存取權。這兩個概念會彼此搭配運作,協助您保護應用程式。

配額與限制

使用 App Check 時,必須遵守您使用的認證提供者的配額和限制。

  • DeviceCheck 和 App Attest 的存取權必須遵守 Apple 設定的任何配額或限制。

  • Play Integrity 的標準 API 用量層級是每日 10,000 次呼叫的配額。如要瞭解如何提高用量層級,請參閱 Play Integrity 說明文件

  • SafetyNet 的每日呼叫配額為 10,000 次。如要瞭解如何要求提高配額,請參閱 SafetyNet 說明文件

  • reCAPTCHA Enterprise 每月可收取 100 萬次呼叫的費用,超出此額度的費用。詳情請參閱 reCAPTCHA Enterprise 定價

開始探索

準備好開始使用了嗎?

Apple 平台

DeviceCheck App Attest

Android

Play Integrity

網站

reCAPTCHA Enterprise

Flutter

預設供應商

C++

預設供應商

Unity

預設供應商

瞭解如何導入自訂 App Check 供應商:

自訂供應商

瞭解如何使用 App Check 保護非 Google 的後端資源:

iOS+ Android 網頁版 Flutter