Firebase App Check implementieren, um APIs vor nicht autorisierten Clients zu schützen

Wenn Sie eine API direkt über eine mobile App oder Web-App aufrufen (z. B. APIs, die den Zugriff auf generative KI-Modelle ermöglichen), ist die API anfällig für Missbrauch durch nicht autorisierte Clients. Zum Schutz dieser APIs können Sie mit Firebase App Check prüfen, ob alle eingehenden API-Aufrufe von Ihrer tatsächlichen App stammen.

Firebase AI Logic bietet ein Proxy-Gateway, mit dem Sie Firebase App Check einbinden und die APIs für generative KI-Modelle schützen können, die von Ihren mobilen und Webanwendungen aufgerufen werden. Die Einbindung in App Check wird sowohl für Gemini Developer API als auch für Vertex AI Gemini API unterstützt, wenn Sie die Firebase AI Logic SDKs verwenden. Sie können sowohl Gemini- als auch Imagen-Modelle schützen.

Allgemeine Übersicht über die Funktionsweise von App Check

Bei App Check verwenden Geräte, auf denen Ihre App ausgeführt wird, einen App- oder Geräteattestierungsanbieter, der eine oder beide der folgenden Optionen überprüft:

  • Anfragen stammen aus Ihrer authentischen App
  • Anfragen stammen von einem authentischen, nicht manipulierten Gerät

Diese Attestierung ist jeder Anfrage Ihrer App bei Verwendung eines Firebase AI Logic-SDKs angehängt. Wenn Sie die Erzwingung von App Check aktivieren, werden Anfragen von Clients ohne gültige Attestierung abgelehnt. Das gilt auch für Anfragen von Apps oder Plattformen, die Sie nicht autorisiert haben.

Weitere Informationen finden Sie in der Firebase App Check-Dokumentation.

Verfügbare Anbieter und Implementierungsanleitung

App Check unterstützt die Verwendung der folgenden Dienste als Attestierungsanbieter. Klicken Sie auf den Link eines Anbieters, um die App Check Dokumentation für diesen Anbieter aufzurufen, einschließlich Beschreibungen und Implementierungsanleitungen.

Wenn diese Anbieter nicht Ihren Anforderungen entsprechen, können Sie auch Ihren eigenen Dienst implementieren, der entweder einen Attestierungsanbieter von Drittanbietern oder Ihre eigenen Attestierungsmethoden verwendet. Weitere Informationen finden Sie in der App Check-Dokumentation.

Für Flutter ist eine spezielle Instanziierung erforderlich

Klicke auf deinen Gemini API-Anbieter, um dir anbieterspezifische Inhalte und Code auf dieser Seite anzusehen.

Wenn Sie App Check mit Firebase AI Logic in Flutter-Apps verwenden, müssen Sie App Check bei der Instanziierung explizit übergeben, z. B. so:

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

Weitere Informationen zu App Check

Informationen zur Einbindung von Firebase AI Logic in App Check

Wenn Sie die Firebase AI Logic SDKs verwenden möchten, muss die Firebase AI Logic API (firebasevertexai.googleapis.com) in Ihrem Firebase-Projekt aktiviert sein. Das liegt daran, dass Anfragen, die von den Firebase AI Logic SDKs gesendet werden, zuerst an den Firebase AI Logic-Server gesendet werden. Dieser dient als Proxy-Gateway, in dem die Firebase App Check-Bestätigung vor der Weiterleitung der Anfrage an das Backend des ausgewählten „Gemini API“-Anbieters und die APIs für den Zugriff auf die Gemini- und Imagen-Modelle erfolgt.