App Check की मदद से, Firebase से बाहर के संसाधनों को सुरक्षित रखना

Firebase को छोड़कर, अपने ऐप्लिकेशन के संसाधनों को सुरक्षित रखने के लिए, ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल किया जा सकता है. उदाहरण के लिए, खुद होस्ट किए गए बैकएंड. ऐसा करने के लिए, आपको ये दोनों काम करने होंगे:

  • अपने ऐप्लिकेशन क्लाइंट में बदलाव करें, ताकि वह आपके बैकएंड को हर अनुरोध के साथ-साथ ऐप्लिकेशन की जांच वाला टोकन भेज सके. इसके बारे में इस पेज पर बताया गया है.
  • अपने बैकएंड में बदलाव करें, ताकि हर अनुरोध के साथ एक मान्य ऐप्लिकेशन जांच टोकन ज़रूरी हो. इसके बारे में, कस्टम बैकएंड से ऐप्लिकेशन जांच टोकन की पुष्टि करना में बताया गया है.

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

डिफ़ॉल्ट कंपनी का इस्तेमाल करके, अपने ऐप्लिकेशन में ऐप्लिकेशन की जांच करने की सुविधा जोड़ें.

बैकएंड अनुरोधों के साथ, ऐप्लिकेशन की जांच वाले टोकन भेजें

यह पक्का करने के लिए कि आपके बैकएंड अनुरोधों में मान्य और ऐप्लिकेशन चेक टोकन शामिल है. इसके लिए, getToken() को कॉल करने के साथ हर अनुरोध से पहले अनुरोध करें. अगर ज़रूरी होगा, तो ऐप्लिकेशन की जांच वाली लाइब्रेरी टोकन को रीफ़्रेश कर देगी.

आपको मान्य टोकन मिलने के बाद, उसे अपने बैकएंड पर अनुरोध के साथ भेजें. इसे पूरा करने के तरीके से जुड़ी शर्तें आपको तय करनी होंगी. हालांकि, ऐप्लिकेशन की जांच वाले टोकन को यूआरएल के हिस्से के तौर पर न भेजें, इसमें क्वेरी पैरामीटर भी शामिल हैं. ऐसा करने से, उनसे अनजाने में हुए लीक और इंटरसेप्शन का खतरा हो जाता है. हमारा सुझाव है कि टोकन को कस्टम एचटीटीपी हेडर में भेजें.

उदाहरण के लिए:

void callApiExample() async {
    final appCheckToken = await FirebaseAppCheck.instance.getToken();
    if (appCheckToken != null) {
        final response = await http.get(
            Uri.parse("https://yourbackend.example.com/yourExampleEndpoint"),
            headers: {"X-Firebase-AppCheck": appCheckToken},
        );
    } else {
        // Error: couldn't get an App Check token.
    }
}