Proteger recursos de back-end personalizados com o App Check nos projetos C++
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Use o App Check para proteger recursos de back-end personalizados que não são do Google para
seu app, como o back-end auto-hospedado. Para isso, será necessário realizar as ações a seguir:
Modifique o cliente do app para enviar um token do App Check junto com cada solicitação
para o back-end, conforme descrito nesta página.
Enviar tokens do App Check com solicitações de back-end
Para garantir que as solicitações de back-end incluam um token válido e não expirado do App Check,
basta preceder cada pedido com uma chamada para AppCheck::GetAppCheckToken(). A biblioteca do App Check vai atualizar o token, se necessário.
Quando você tiver um token válido, envie com a solicitação para o back-end. Você
decide como fazer isso, mas não envie tokens
do App Check como parte dos URLs, inclusive nos parâmetros de consulta, porque isso
os torna vulneráveis a vazamentos e interceptações acidentais. A abordagem
recomendada é enviar o token em um cabeçalho HTTP personalizado.
Exemplo:
voidCallApiExample(){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([&](constFuture<std::string>&future_token){if(future_token.result()){// Got a valid App Check token. Include it in your own http calls.}}}
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-05 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 }"]]