Puoi proteggere le risorse non Firebase della tua app, come i backend self-hosted, con App Check. Per fare ciò, dovrai eseguire entrambe le seguenti operazioni:
- Modifica il client dell'app per inviare un token App Check insieme a ogni richiesta al tuo back-end, come descritto in questa pagina.
- Modifica il tuo back-end per richiedere un token App Check valido con ogni richiesta, come descritto in Verifica dei token App Check da un back-end personalizzato .
Prima di iniziare
Aggiungi App Check alla tua app, utilizzando i provider predefiniti .
Invia token App Check con richieste di back-end
Per assicurarti che le tue richieste di back-end includano un token App Check valido e non scaduto, fai precedere ogni richiesta con una chiamata a getToken()
. La libreria App Check aggiornerà il token se necessario.
Una volta che hai un token valido, invialo insieme alla richiesta al tuo back-end. Le specifiche su come eseguire questa operazione dipendono da te, ma non inviare token App Check come parte degli URL , inclusi i parametri di query, poiché ciò li rende vulnerabili a perdite e intercettazioni accidentali. L'approccio consigliato consiste nell'inviare il token in un'intestazione HTTP personalizzata.
Per esempio:
void callApiExample() async {
final appCheckToken = await FirebaseAppCheck.instance.getToken();
if (appCheckToken != null) {
final response = await http.get(
Uri.parse("https://yourbackend.example.com/yourExampleEndpoint"),
headers: {"X-Firebase-AppCheck": appCheckToken},
);
} else {
// Error: couldn't get an App Check token.
}
}