Você pode proteger os recursos que não são do Firebase, como back-ends auto-hospedados, com o App Check. Para fazer isso, você precisará fazer o seguinte:
- Modifique o cliente do seu aplicativo para enviar um token do App Check junto com cada solicitação ao seu back-end, conforme descrito nesta página.
- Modifique seu back-end para exigir um token válido do App Check a cada solicitação, conforme descrito em Verificar tokens do App Check de um back-end personalizado .
Antes de você começar
Adicione o App Check ao seu aplicativo usando os provedores padrão .
Enviar tokens de verificação de aplicativo com solicitações de back-end
Para garantir que suas solicitações de back-end incluam um token de verificação de aplicativo válido e não expirado, preceda cada solicitação com uma chamada para getToken()
. A biblioteca App Check atualizará o token, se necessário.
Depois de ter um token válido, envie-o junto com a solicitação para seu back-end. As especificidades de como você faz isso dependem de você, mas não envie tokens do App Check como parte de URLs , inclusive em parâmetros de consulta, pois isso os torna vulneráveis a vazamentos e interceptações acidentais. A abordagem recomendada é enviar o token em um cabeçalho HTTP personalizado.
Por exemplo:
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.
}
}