您可以保護應用程式的非 Firebase 資源,例如自行管理的後端。 與 App Check 整合如要這麼做,您需要執行這兩項操作:
- 修改應用程式用戶端,傳送 App Check 權杖和每個要求 如本頁所述,將 VM 傳送至您的後端。
- 修改後端,在每次要求中要求有效的 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.
}
}
}