Quando chiami il Gemini API direttamente dalle tue app mobile e web, la protezione dell'infrastruttura di backend, della quota e dei prompt proprietari richiede un approccio di difesa in profondità a più livelli. Esamina questo elenco di controllo per implementare le best practice di sicurezza consigliate per Firebase AI Logic.
Verifica di app, dispositivo e utente
Verifica che le richieste in entrata provengano da istanze legittime e non manomesse della tua app in esecuzione su dispositivi autentici, nonché da utenti autentici.
Applica Firebase App Check
Applica Firebase App Check per proteggere Gemini API da utilizzi illeciti quando viene chiamata direttamente dalla tua app. Quando App Check è applicato, verifica che le richieste in entrata provengano da dalla tua app autentica e/o da un dispositivo non manomesso.
App Check supporta i provider di attestazione per le piattaforme Apple (DeviceCheck, App Attest o reCAPTCHA Enterprise), Android (Play Integrity o reCAPTCHA Enterprise) e web (reCAPTCHA Enterprise). Supporta tutti questi provider anche per le app Flutter e Unity.
A partire dall'inizio di luglio 2026, Firebase applicherà automaticamente App Check per Firebase AI Logic durante la configurazione guidata nella Firebase console. Se hai configurato Firebase AI Logic in precedenza, assicurati di applicare App Check in modo esplicito. Per lo sviluppo locale, puoi configurare il App Check provider di debug, e poi registrare la tua app con un provider di attestazione di produzione prima di rilasciarla agli utenti finali.
Attiva la protezione di riproduzione con token a uso limitato
Nell'ambito della configurazione di App Check, valuta la possibilità di applicare la protezione di riproduzione in modo che App Check i token siano a uso singolo. Questa opzione offre una protezione avanzata oltre a quella di base e ti consente di impostare un livello di protezione appropriato per la tua app e i tuoi casi d'uso.
Configura le limitazioni per le chiavi API Firebase
Le chiavi API Firebase identificano il tuo progetto e la tua app Firebase quando effettui richieste. Per impedire l'utilizzo non autorizzato delle chiavi API:
Imposta "Limitazioni delle applicazioni" nella Google Cloud console per limitare l'utilizzo delle chiavi solo alle richieste provenienti dall' ID pacchetto specifico della tua app (Apple), dal nome del pacchetto e dall'impronta SHA-1 (Android) o dal referrer HTTP (web).
Esamina la lista consentita "Limitazioni API" di ogni chiave:
- Assicurati che
Firebase AI Logic API (
firebasevertexai.googleapis.com) sia nella lista consentita. - Assicurati che le uniche altre API nella lista consentita siano i servizi Firebase specifici richiesti dalla tua app. Consulta l'elenco delle API richieste per le chiavi Firebase limitate.
- Assicurati che
Firebase AI Logic API (
Tieni presente che le API correlate a Firebase utilizzano le chiavi API solo per identificare il progetto o l'app Firebase, non per l'autorizzazione a chiamare l'API.
Limita le richieste solo agli utenti autenticati
Valuta la possibilità di applicare la modalità utenti autenticati in modo
che tutte le richieste tramite Firebase AI Logic debbano includere credenziali valide di
Firebase Authentication. Se una richiesta proviene da un utente finale non autenticato, viene rifiutata con un errore 401: unauthenticated.
Protezione dei prompt e rafforzamento delle richieste
Impedisci la decompilazione del client per esporre i design dei prompt e blocca il backend in modo che gli utenti malintenzionati non possano eseguire prompt arbitrari.
Utilizza i template di prompt del server
Utilizzai template di prompt del server per mantenere i prompt, le istruzioni di sistema e le configurazioni dei modelli in modo sicuro nel cloud, anziché codificarli in modo rigido nel codice dell'app client, dove possono essere estratti utilizzando la decompilazione binaria.
La tua app fa riferimento solo a un ID modello e passa le variabili di input dinamiche. I template di prompt del server ti consentono anche di aggiornare i prompt o cambiare i modelli on demand senza rilasciare una nuova versione dell'app.
Convalida e sanifica le variabili dei template fornite dal client
I template di prompt del server proteggono il design dei prompt, ma i template che accettano variabili dinamiche possono comunque essere soggetti a prompt injection. Poiché i template concatenano le variabili di input dell'utente nel prompt finale, assicurati di eseguire le seguenti operazioni:
- Convalida e sanifica tutti gli input dell'utente sul client prima di passare le variabili a un template (ad esempio applicando limiti di caratteri e formati previsti).
- Includi istruzioni di sistema chiare nei template che definiscono i limiti per l'elaborazione dell'input dell'utente.
Applica la modalità solo template
Valuta la possibilità di applicare
la modalità solo template
una volta che tutte le funzionalità dell'app utilizzano i template di prompt del server. Quando è applicata,
Firebase AI Logic blocca tutte le richieste dirette e non basate su template all'
Gemini API (403: unauthorized), impedendo agli utenti malintenzionati di inviare
prompt arbitrari o di utilizzare in modo illecito la tua quota.
Monitoraggio, limiti e fatturazione
Ottieni visibilità sul traffico in entrata e sulle anomalie di sicurezza e proteggi il tuo progetto da picchi di utilizzo imprevisti o costi fuori controllo.
Configura il monitoraggio dell'AI nella console Firebase
Configura
il monitoraggio dell'AI nella console Firebase
per ottenere visibilità sulle metriche chiave, come conteggi delle richieste, latenza, utilizzo dei token,
e percentuali di errore (inclusi errori di autenticazione 401 e blocchi 403 solo template).
Puoi anche esaminare le singole tracce nella console Google Cloud.
Imposta i limiti di frequenza e gestisci le quote
Proteggi il tuo progetto da picchi di utilizzo imprevisti e attacchi di tipo denial-of-wallet:
- Imposta i limiti di frequenza per utente (il valore predefinito è 100 RPM) per impedire alle singole istanze client di consumare una quota eccessiva.
- Esamina e gestisci le quote del progetto nella console Google Cloud per ogni API sottostante.
Evita fatture a sorpresa con avvisi e limiti di spesa
Se il tuo progetto Firebase utilizza il piano tariffario Blaze con pagamento a consumo:
Configura avvisi relativi al budget e limiti di spesa.
Passaggi successivi
- Esamina l'elenco di controllo generale per la sicurezza di Firebase.
- Esamina l'elenco di controllo generale per la produzione di Firebase AI Logic.
- Scopri di più su prezzi e gestione dei costi per Firebase AI Logic.