एंड्रॉइड पर प्ले इंटीग्रिटी के साथ ऐप चेक का उपयोग शुरू करें

यह पृष्ठ आपको दिखाता है कि अंतर्निहित प्ले इंटीग्रिटी प्रदाता का उपयोग करके एंड्रॉइड ऐप में ऐप चेक को कैसे सक्षम किया जाए। जब आप ऐप चेक सक्षम करते हैं, तो आप यह सुनिश्चित करने में मदद करते हैं कि केवल आपका ऐप ही आपके प्रोजेक्ट के फायरबेस संसाधनों तक पहुंच सकता है। इस सुविधा का अवलोकन देखें.

वर्तमान में, अंतर्निहित प्ले इंटीग्रिटी प्रदाता केवल Google Play द्वारा वितरित एंड्रॉइड ऐप्स का समर्थन करता है। प्ले इंटीग्रिटी की ऑफ-प्ले सुविधाओं का उपयोग करने के लिए, या अपने स्वयं के कस्टम प्रदाता के साथ ऐप चेक का उपयोग करने के लिए, एक कस्टम ऐप चेक प्रदाता लागू करें देखें।

1. अपना फायरबेस प्रोजेक्ट सेट करें

  1. यदि आपने पहले से ऐसा नहीं किया है तो अपने Android प्रोजेक्ट में Firebase जोड़ें

  2. प्ले इंटीग्रिटी एपीआई सक्षम करें:

    1. Google Play कंसोल में, अपना ऐप चुनें, या यदि आपने पहले से ऐसा नहीं किया है तो इसे जोड़ें।

    2. रिलीज़ अनुभाग में, ऐप अखंडता पर क्लिक करें।

    3. पृष्ठ के प्ले इंटीग्रिटी एपीआई अनुभाग पर जाएं, लिंक क्लाउड प्रोजेक्ट पर क्लिक करें, फिर Google क्लाउड प्रोजेक्ट की सूची से अपना फायरबेस प्रोजेक्ट चुनें। आपके द्वारा यहां चुना गया प्रोजेक्ट वही फायरबेस प्रोजेक्ट होना चाहिए जिसमें आप अपना ऐप पंजीकृत करते हैं (अगला चरण देखें)।

  3. फायरबेस कंसोल के ऐप चेक अनुभाग में प्ले इंटीग्रिटी प्रदाता के साथ ऐप चेक का उपयोग करने के लिए अपने ऐप्स पंजीकृत करें। आपको अपने ऐप के हस्ताक्षर प्रमाणपत्र का SHA-256 फ़िंगरप्रिंट प्रदान करना होगा।

    आपको आमतौर पर अपने प्रोजेक्ट के सभी ऐप्स को पंजीकृत करने की आवश्यकता होती है, क्योंकि एक बार जब आप फायरबेस उत्पाद के लिए प्रवर्तन सक्षम कर लेते हैं, तो केवल पंजीकृत ऐप्स ही उत्पाद के बैकएंड संसाधनों तक पहुंच पाएंगे।

  4. वैकल्पिक : ऐप पंजीकरण सेटिंग्स में, प्रदाता द्वारा जारी किए गए ऐप चेक टोकन के लिए एक कस्टम टाइम-टू-लाइव (टीटीएल) सेट करें। आप टीटीएल को 30 मिनट से 7 दिनों के बीच किसी भी मान पर सेट कर सकते हैं। इस मान को बदलते समय, निम्नलिखित ट्रेडऑफ़ से सावधान रहें:

    • सुरक्षा: छोटे टीटीएल मजबूत सुरक्षा प्रदान करते हैं, क्योंकि यह उस विंडो को कम कर देता है जिसमें किसी हमलावर द्वारा लीक या इंटरसेप्ट किए गए टोकन का दुरुपयोग किया जा सकता है।
    • प्रदर्शन: छोटे टीटीएल का मतलब है कि आपका ऐप अधिक बार सत्यापन करेगा। क्योंकि ऐप सत्यापन प्रक्रिया हर बार निष्पादित होने पर नेटवर्क अनुरोधों में विलंबता जोड़ती है, एक छोटा टीटीएल आपके ऐप के प्रदर्शन को प्रभावित कर सकता है।
    • कोटा और लागत: छोटे टीटीएल और बार-बार पुन: सत्यापन से आपका कोटा तेजी से ख़त्म हो जाता है, और सशुल्क सेवाओं के लिए संभावित रूप से अधिक लागत आती है। कोटा और सीमाएँ देखें।

    अधिकांश ऐप्स के लिए 1 घंटे का डिफ़ॉल्ट टीटीएल उचित है। ध्यान दें कि ऐप चेक लाइब्रेरी लगभग आधी टीटीएल अवधि पर टोकन को ताज़ा करती है।

2. ऐप चेक लाइब्रेरी को अपने ऐप में जोड़ें

अपने मॉड्यूल (ऐप-स्तर) ग्रैडल फ़ाइल में (आमतौर पर <project>/<app-module>/build.gradle.kts या <project>/<app-module>/build.gradle ), ऐप चेक के लिए निर्भरता जोड़ें Android के लिए लाइब्रेरी. हम लाइब्रेरी वर्जनिंग को नियंत्रित करने के लिए फायरबेस एंड्रॉइड BoM का उपयोग करने की सलाह देते हैं।

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:32.8.0"))

    // Add the dependencies for the App Check libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity")
}

फायरबेस एंड्रॉइड बीओएम का उपयोग करके, आपका ऐप हमेशा फायरबेस एंड्रॉइड लाइब्रेरी के संगत संस्करणों का उपयोग करेगा।

(वैकल्पिक) BoM का उपयोग किए बिना फायरबेस लाइब्रेरी निर्भरताएँ जोड़ें

यदि आप फायरबेस बीओएम का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक फायरबेस लाइब्रेरी संस्करण को उसकी निर्भरता पंक्ति में निर्दिष्ट करना होगा।

ध्यान दें कि यदि आप अपने ऐप में एकाधिक फायरबेस लाइब्रेरी का उपयोग करते हैं, तो हम लाइब्रेरी संस्करणों को प्रबंधित करने के लिए BoM का उपयोग करने की दृढ़ता से अनुशंसा करते हैं, जो सुनिश्चित करता है कि सभी संस्करण संगत हैं।

dependencies {
    // Add the dependencies for the App Check libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity:17.1.2")
}
कोटलिन-विशिष्ट लाइब्रेरी मॉड्यूल खोज रहे हैं? अक्टूबर 2023 (फायरबेस बीओएम 32.5.0) से शुरू होकर, कोटलिन और जावा डेवलपर्स दोनों मुख्य लाइब्रेरी मॉड्यूल पर निर्भर हो सकते हैं (विवरण के लिए, इस पहल के बारे में अक्सर पूछे जाने वाले प्रश्न देखें)।

3. ऐप चेक आरंभ करें

अपने ऐप में निम्नलिखित आरंभीकरण कोड जोड़ें ताकि यह आपके द्वारा किसी अन्य फायरबेस एसडीके का उपयोग करने से पहले चले:

Kotlin+KTX

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    PlayIntegrityAppCheckProviderFactory.getInstance(),
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        PlayIntegrityAppCheckProviderFactory.getInstance());

अगले कदम

एक बार जब आपके ऐप में ऐप चेक लाइब्रेरी इंस्टॉल हो जाए, तो अपने उपयोगकर्ताओं को अपडेटेड ऐप वितरित करना शुरू करें।

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

मेट्रिक्स की निगरानी करें और प्रवर्तन सक्षम करें

हालाँकि, प्रवर्तन सक्षम करने से पहले, आपको यह सुनिश्चित करना चाहिए कि ऐसा करने से आपके मौजूदा वैध उपयोगकर्ता बाधित नहीं होंगे। दूसरी ओर, यदि आप अपने ऐप संसाधनों का संदिग्ध उपयोग देख रहे हैं, तो आप जल्द ही प्रवर्तन सक्षम करना चाहेंगे।

यह निर्णय लेने में सहायता के लिए, आप अपने द्वारा उपयोग की जाने वाली सेवाओं के लिए ऐप चेक मेट्रिक्स देख सकते हैं:

ऐप जांच प्रवर्तन सक्षम करें

जब आप समझ जाते हैं कि ऐप चेक आपके उपयोगकर्ताओं को कैसे प्रभावित करेगा और आप आगे बढ़ने के लिए तैयार हैं, तो आप ऐप चेक प्रवर्तन सक्षम कर सकते हैं:

डिबग परिवेश में ऐप चेक का उपयोग करें

यदि, अपने ऐप को ऐप चेक के लिए पंजीकृत करने के बाद, आप अपने ऐप को ऐसे वातावरण में चलाना चाहते हैं जिसे ऐप चेक आमतौर पर वैध के रूप में वर्गीकृत नहीं करेगा, जैसे कि विकास के दौरान एक एमुलेटर, या निरंतर एकीकरण (सीआई) वातावरण से, तो आप ऐसा कर सकते हैं अपने ऐप का एक डिबग बिल्ड बनाएं जो वास्तविक सत्यापन प्रदाता के बजाय ऐप चेक डिबग प्रदाता का उपयोग करता है।

एंड्रॉइड पर डिबग प्रदाता के साथ ऐप चेक का उपयोग करें देखें।