ऐप चेक के साथ गैर-फ़ायरबेस संसाधनों को सुरक्षित रखें

आप ऐप चेक के साथ अपने ऐप के गैर-फायरबेस संसाधनों, जैसे स्वयं-होस्टेड बैकएंड की रक्षा कर सकते हैं। ऐसा करने के लिए, आपको निम्नलिखित दोनों कार्य करने होंगे:

  • इस पृष्ठ पर वर्णित अनुसार, अपने बैकएंड को प्रत्येक अनुरोध के साथ ऐप चेक टोकन भेजने के लिए अपने ऐप क्लाइंट को संशोधित करें।
  • प्रत्येक अनुरोध के साथ एक वैध ऐप चेक टोकन की आवश्यकता के लिए अपने बैकएंड को संशोधित करें, जैसा कि कस्टम बैकएंड से ऐप चेक टोकन सत्यापित करें में वर्णित है।

शुरू करने से पहले

डिफ़ॉल्ट प्रदाताओं का उपयोग करके, अपने ऐप में ऐप चेक जोड़ें।

बैकएंड अनुरोधों के साथ ऐप चेक टोकन भेजें

यह सुनिश्चित करने के लिए कि आपके बैकएंड अनुरोधों में एक वैध, असमाप्त, ऐप चेक टोकन शामिल है, प्रत्येक अनुरोध से पहले AppCheck::GetAppCheckToken() पर कॉल करें। यदि आवश्यक हो तो ऐप चेक लाइब्रेरी टोकन को रीफ़्रेश करेगी।

एक बार आपके पास एक वैध टोकन होने के बाद, इसे अपने बैकएंड को अनुरोध के साथ भेजें। आप इसे कैसे पूरा करते हैं, इसकी बारीकियां आप पर निर्भर हैं, लेकिन क्वेरी पैरामीटर सहित 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.
        }
    }
}