Вы можете использовать App Check для защиты сторонних бэкенд-ресурсов вашего приложения, например, вашего собственного бэкенда, размещенного на вашем сервере. Для этого вам необходимо выполнить два следующих действия:
- Измените клиентское приложение так, чтобы оно отправляло токен проверки приложения вместе с каждым запросом на ваш бэкэнд, как описано на этой странице.
- Измените свой бэкэнд так, чтобы он требовал действительный токен App Check при каждом запросе, как описано в разделе Проверка токенов App Check из пользовательского бэкэнда .
Прежде чем начать
Добавьте проверку приложений в свое приложение, используя поставщиков по умолчанию .
Отправлять токены проверки приложений с внутренними запросами
Чтобы убедиться, что ваши внутренние запросы содержат действительный, неистекший токен App Check, перед каждым запросом вызывайте getToken()
. Библиотека App Check обновит токен при необходимости.
Получив действительный токен, отправьте его вместе с запросом в бэкенд. Вы можете выбрать, как это сделать, но не отправляйте токены App Check в составе URL-адресов , в том числе в параметрах запроса, так как это делает их уязвимыми для случайной утечки и перехвата. Рекомендуемый подход — отправлять токен в настраиваемом HTTP-заголовке.
Например:
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.
}
}