Chroń interfejsy API przed nieautoryzowanymi klientami za pomocą Sprawdzania aplikacji Firebase

Gdy wywołujesz interfejs API bezpośrednio z aplikacji mobilnej lub internetowej (np. interfejsy API, które umożliwiają dostęp do modeli generatywnej AI), jest on podatny na nadużycia ze strony nieautoryzowanych klientów. Aby chronić te interfejsy API, możesz użyć Firebase App Check, aby sprawdzić, czy wszystkie przychodzące wywołania interfejsu API pochodzą z Twojej aplikacji.

Firebase AI Logic udostępnia bramę proxy, która umożliwia integrację z Firebase App Check i ochronę interfejsów API generatywnych modeli AI wywoływanych przez aplikacje mobilne i internetowe. Integracja z App Check jest obsługiwana zarówno w przypadku Gemini Developer API, jak i Vertex AI Gemini API , gdy używasz pakietów SDK Firebase AI Logic. Możesz chronić modele GeminiImagen.

Ogólne podsumowanie działania usługi App Check

W przypadku App Check urządzenia, na których działa Twoja aplikacja, korzystają z usługi potwierdzania autentyczności aplikacji lub urządzenia, która weryfikuje co najmniej jeden z tych elementów:

  • Żądania pochodzą z autentycznej aplikacji
  • Żądania pochodzą z autentycznego, niezmodyfikowanego urządzenia.

To zaświadczenie jest dołączane do każdego żądania wysyłanego przez aplikację za pomocą pakietu SDK Firebase AI Logic. Gdy włączysz wymuszanie App Check, żądania od klientów bez ważnego zaświadczenia będą odrzucane. Dotyczy to też żądań pochodzących z aplikacji lub platform, które nie zostały przez Ciebie autoryzowane.

Szczegółowe informacje znajdziesz w Firebase App Checkdokumentacji.

Dostępni dostawcy i instrukcje implementacji

App Check ma wbudowaną obsługę tych usług jako dostawców atestów. Kliknij link dostawcy, aby wyświetlić App Checkdokumentację tego dostawcy, w tym opisy i instrukcje implementacji.

Jeśli ci dostawcy nie spełniają Twoich potrzeb, możesz też wdrożyć własną usługę, która korzysta z dostawcy atestów innej firmy lub z własnych technik atestowania (więcej informacji znajdziesz w App Check dokumentacji).

Wymagana specjalna instancja w przypadku Fluttera

Kliknij dostawcę Gemini API, aby wyświetlić na tej stronie treści i kod dostawcy.

Gdy używasz App CheckFirebase AI Logic w aplikacjach Flutter, musisz jawnie przekazać App Check podczas tworzenia instancji, np. tak:

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

Dodatkowe informacje o App Check

Dowiedz się, jak Firebase AI Logic integruje się z App Check

Aby korzystać z Firebase AI Logicpakietów SDK, w projekcie Firebase musi być włączony Firebase AI Logicinterfejs API (firebasevertexai.googleapis.com). Dzieje się tak, ponieważ żądania wysyłane przez pakiety SDK Firebase AI Logic są najpierw przesyłane na serwer Firebase AI Logic, który działa jako brama proxy, w której odbywa się weryfikacja Firebase App Check zanim żądanie zostanie przekazane do backendu wybranego przez Ciebie dostawcy „Gemini API” i interfejsów API umożliwiających dostęp do modeli GeminiImagen.