在 C++ 專案中使用 App Check 保護自訂後端資源

您可以透過 App Check 保護應用程式的非 Google 自訂後端資源,例如自行管理的後端。如要這麼做,請完成下列兩項操作:

  • 按照本頁說明,修改應用程式用戶端,在每次向後端發出要求時,一併傳送應用程式檢查權杖。
  • 按照「從自訂後端驗證 App Check 權杖」一文所述,修改後端,要求每個要求都必須附上有效的 App Check 權杖。

事前準備

使用預設供應商,在應用程式中加入 App Check。

在後端要求中傳送 App Check 權杖

為確保後端要求包含有效且未過期的 App Check 權杖,請在每項要求前呼叫 AppCheck::GetAppCheckToken()。如有必要,App Check 程式庫會重新整理權杖。

取得有效權杖後,請將權杖連同要求傳送至後端。具體做法由您決定,但請勿在網址中傳送應用程式檢查權杖,包括查詢參數,否則權杖可能會意外洩漏或遭到攔截。建議的做法是在自訂 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.         }     } }