導入 Firebase App Check,防止未經授權的用戶端存取 API

如果您直接從行動或網頁應用程式呼叫 API (例如允許存取生成式 AI 模型的 API),該 API 就可能遭到未經授權的用戶端濫用。為保護這些 API,您可以使用 Firebase App Check 驗證所有傳入的 API 呼叫是否來自實際應用程式。

Firebase AI Logic 提供代理閘道,可讓您整合 Firebase App Check,並保護行動和網頁應用程式所呼叫的生成式 AI 模型 API。使用 Firebase AI Logic SDK 時,Gemini Developer APIVertex AI Gemini API 都支援整合 App Check您可以同時保護 GeminiImagen 模型。

App Check 運作方式的概略總結

使用 App Check 時,執行應用程式的裝置會使用應用程式或裝置認證提供者,驗證下列一或兩項:

  • 來自您已驗證應用程式的要求
  • 要求來自未經竄改的真實裝置

這項認證會附加至應用程式使用 Firebase AI Logic SDK 提出的每項要求。啟用 App Check 強制執行功能後,系統會拒絕來自未經授權應用程式或平台的任何要求,以及來自用戶端但未經有效認證的所有要求。

詳情請參閱 Firebase App Check 說明文件

可用的供應工具和導入說明

App Check 內建支援功能,可將下列服務用作認證提供者。按一下供應商的連結,即可查看該供應商的App Check說明文件,包括說明和導入操作說明。

如果這些供應商無法滿足您的需求,您也可以導入自己的服務,使用第三方認證供應商或自己的認證技術 (詳情請參閱 App Check 說明文件)。

需要為 Flutter 進行特殊例項化

按一下您的 Gemini API 供應商,即可在本頁查看供應商專屬內容和程式碼。

在 Flutter 應用程式中使用 App CheckFirebase AI Logic 時,您需要在例項化期間明確傳入 App Check,如下所示:

final ai = await FirebaseAI.googleAI(appCheck: FirebaseAppCheck.instance)
  .generativeModel(model: 'MODEL_NAME');

有關 App Check 的其他資訊

瞭解 Firebase AI Logic 如何與 App Check 整合

如要使用 Firebase AI Logic SDK,必須在 Firebase 專案中啟用 Firebase AI Logic API (firebasevertexai.googleapis.com)。這是因為 Firebase AI Logic SDK 提出的要求會先傳送至 Firebase AI Logic 伺服器,而該伺服器會充當 Proxy 閘道,在要求獲准繼續傳送至所選「Gemini API」供應商的後端和 API 以存取 GeminiImagen 模型之前,先進行 Firebase App Check 驗證。