Защитите пользовательские серверные ресурсы с помощью проверки приложений в проектах C++.
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Вы можете использовать App Check для защиты сторонних бэкенд-ресурсов вашего приложения, например, вашего собственного бэкенда, размещенного на вашем сервере. Для этого вам необходимо выполнить два следующих действия:
- Измените клиентское приложение так, чтобы оно отправляло токен проверки приложения вместе с каждым запросом на ваш бэкэнд, как описано на этой странице.
- Измените свой бэкэнд так, чтобы он требовал действительный токен App Check при каждом запросе, как описано в разделе Проверка токенов App Check из пользовательского бэкэнда .
Прежде чем начать
Добавьте проверку приложений в свое приложение, используя поставщиков по умолчанию .
Отправлять токены проверки приложений с внутренними запросами
Чтобы убедиться, что ваши внутренние запросы включают действительный, неистекший токен App Check, перед каждым запросом вызывайте AppCheck::GetAppCheckToken()
. Библиотека App Check обновит токен при необходимости.
Получив действительный токен, отправьте его вместе с запросом в бэкенд. Вы можете выбрать, как это сделать, но не отправляйте токены App Check в составе URL-адресов , в том числе в параметрах запроса, так как это делает их уязвимыми для случайной утечки и перехвата. Рекомендуемый подход — отправлять токен в настраиваемом HTTP-заголовке.
Например:
void CallApiExample() {
firebase_app_check::AppCheck* app_check = firebase::app_check::AppCheck::GetInstance();
Future<std::string> app_check_future = app_check->GetAppCheckToken(false);
app_check_future.OnCompletion([&](const Future<std::string>& future_token) {
if (future_token.result()) {
// Got a valid App Check token. Include it in your own http calls.
}
}
}
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-22 UTC.
[null,null,["Последнее обновление: 2025-08-22 UTC."],[],[],null,["\u003cbr /\u003e\n\nYou can use App Check to protect non-Google custom backend resources for\nyour app, like your own self-hosted backend. To do so, you'll need to do both of\nthe following:\n\n- Modify your app client to send an App Check token along with each request to your backend, as described on this page.\n- Modify your backend to require a valid App Check token with every request, as described in [Verify App Check tokens from a custom backend](/docs/app-check/custom-resource-backend).\n\nBefore you begin\n\nAdd App Check to your app, using the [default providers](/docs/app-check/cpp/default-providers).\n\nSend App Check tokens with backend requests\n\nTo ensure your backend requests include a valid, unexpired, App Check token,\nprecede each request with a call to `AppCheck::GetAppCheckToken()`. The App\nCheck library will refresh the token if necessary.\n\nOnce you have a valid token, send it along with the request to your backend. The\nspecifics of how you accomplish this are up to you, but *don't send\nApp Check tokens as part of URLs*, including in query parameters, as this\nmakes them vulnerable to accidental leakage and interception. The recommended\napproach is to send the token in a custom HTTP header.\n\nFor example: \n\n void CallApiExample() {\n firebase_app_check::AppCheck* app_check = firebase::app_check::AppCheck::GetInstance();\n Future\u003cstd::string\u003e app_check_future = app_check-\u003eGetAppCheckToken(false);\n app_check_future.OnCompletion([&](const Future\u003cstd::string\u003e& future_token) {\n if (future_token.result()) {\n // Got a valid App Check token. Include it in your own http calls.\n }\n }\n }"]]