Android पर Play Integrity की मदद से ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल शुरू करें

इस पेज में, पहले से मौजूद Play Integrity प्रोवाइडर का इस्तेमाल करके, किसी Android ऐप्लिकेशन में ऐप्लिकेशन की जांच करने की सुविधा को चालू करने का तरीका बताया गया है. ऐप्लिकेशन जांच की सुविधा चालू करने पर, यह पक्का करने में मदद मिलती है कि सिर्फ़ आपका ऐप्लिकेशन ही आपके प्रोजेक्ट के Firebase संसाधनों को ऐक्सेस कर सकता है. इस सुविधा की खास जानकारी देखें.

फ़िलहाल, Play Integrity सेवा देने वाली पहले से मौजूद कंपनी, सिर्फ़ उन Android ऐप्लिकेशन के साथ काम करती है जिन्हें Google Play ने उपलब्ध कराया है. Play Integrity से जुड़ी Play Integrity की सुविधाओं का इस्तेमाल करने या पसंद के मुताबिक बनाई गई सेवा देने वाली कंपनी के साथ ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करने के लिए, पसंद के मुताबिक ऐप्लिकेशन की जांच करने वाली सेवा लागू करना देखें.

1. अपना Firebase प्रोजेक्ट सेट अप करना

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

  2. Play Integrity API को चालू करें:

    1. Google Play Console में जाकर, अपना ऐप्लिकेशन चुनें या अगर आपने अभी तक ऐप्लिकेशन को नहीं जोड़ा है, तो उसे जोड़ें.

    2. रिलीज़ सेक्शन में, ऐप इंटिग्रिटी पर क्लिक करें.

    3. पेज के Play Integrity API सेक्शन पर जाएं. इसके बाद, Cloud प्रोजेक्ट लिंक करें पर क्लिक करें. इसके बाद, Google Cloud प्रोजेक्ट की सूची में से अपना Firebase प्रोजेक्ट चुनें. यहां चुना गया प्रोजेक्ट, उसी Firebase प्रोजेक्ट का होना चाहिए जिसमें आपने अपना ऐप्लिकेशन रजिस्टर किया है (अगला चरण देखें).

  3. Firebase कंसोल के ऐप्लिकेशन जांच सेक्शन में, Play Integrity देने वाली कंपनी के साथ ऐप्लिकेशन की जांच की सुविधा का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन रजिस्टर करें. आपको अपने ऐप्लिकेशन के साइनिंग सर्टिफ़िकेट का SHA-256 फ़िंगरप्रिंट देना होगा.

    आम तौर पर, आपको अपने प्रोजेक्ट के सभी ऐप्लिकेशन रजिस्टर करने होते हैं, क्योंकि एक बार Firebase प्रॉडक्ट के लिए नीति उल्लंघन ठीक करने का तरीका (एनफ़ोर्समेंट) चालू करने के बाद, सिर्फ़ रजिस्टर किए गए ऐप्लिकेशन ही प्रॉडक्ट के बैकएंड संसाधनों को ऐक्सेस कर पाएंगे.

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

    • सुरक्षा: छोटे टीटीएल को ज़्यादा सुरक्षा मिलती है. इसकी वजह यह है कि इससे लीक हुए या इंटरसेप्ट किए गए टोकन का गलत इस्तेमाल कोई हमलावर कर सकता है.
    • परफ़ॉर्मेंस: छोटे TTL का मतलब है कि आपका ऐप्लिकेशन ज़्यादा बार पुष्टि करने की प्रक्रिया करेगा. ऐप्लिकेशन के प्रमाणित करने की प्रक्रिया, नेटवर्क से जुड़े हर अनुरोध पर कार्रवाई करने में इंतज़ार का समय जोड़ देती है. इसलिए, छोटे TTL (टीटीएल) से आपके ऐप्लिकेशन की परफ़ॉर्मेंस पर असर पड़ सकता है.
    • कोटा और लागत: छोटे टीटीएल और बार-बार फिर से पुष्टि करने पर आपका कोटा जल्दी खत्म हो जाता है और पैसे देकर ली जाने वाली सेवाओं के लिए कोटा खत्म हो सकता है. कोटा और सीमाएं देखें.

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

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

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

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

    // 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")
}

Firebase Android BoM का इस्तेमाल करने पर, आपका ऐप्लिकेशन हमेशा Firebase की Android लाइब्रेरी के साथ काम करने वाले वर्शन का इस्तेमाल करेगा.

(वैकल्पिक) BoM का इस्तेमाल किए बिना Firebase लाइब्रेरी डिपेंडेंसी जोड़ें

अगर आप Firebase BoM का इस्तेमाल नहीं करना चाहते हैं, तो आपको उसकी डिपेंडेंसी लाइन में Firebase लाइब्रेरी के हर वर्शन की जानकारी देनी होगी.

ध्यान दें कि अगर आप अपने ऐप्लिकेशन में कई Firebase लाइब्रेरी का इस्तेमाल करते हैं, तो हमारा सुझाव है कि लाइब्रेरी के वर्शन मैनेज करने के लिए, 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:18.0.0")
}
क्या आपको Kotlin से जुड़े लाइब्रेरी मॉड्यूल की तलाश है? अक्टूबर 2023 (Firebase BoM 32.5.0) से, Kotlin और Java डेवलपर, दोनों मुख्य लाइब्रेरी मॉड्यूल पर निर्भर कर सकते हैं. ज़्यादा जानकारी के लिए, इस इनिशिएटिव के बारे में अक्सर पूछे जाने वाले सवाल देखें.

3. ऐप्लिकेशन की जांच शुरू करें

अपने ऐप्लिकेशन में यह शुरू करने वाला कोड जोड़ें, ताकि यह आपके किसी दूसरे Firebase SDK टूल का इस्तेमाल करने से पहले चले:

Kotlin+KTX

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

Java

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

अगले चरण

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

अपडेट किया गया क्लाइंट ऐप्लिकेशन, Firebase को किए जाने वाले हर अनुरोध के साथ-साथ ऐप्लिकेशन की जांच वाले टोकन भेजना शुरू कर देगा. हालांकि, Firebase प्रॉडक्ट को टोकन के मान्य होने की तब तक ज़रूरत नहीं होगी, जब तक Firebase कंसोल के 'ऐप्लिकेशन जांच' सेक्शन में नीति उल्लंघन ठीक करने का तरीका (एनफ़ोर्समेंट) चालू नहीं किया जाता.

मेट्रिक की निगरानी करें और नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) को चालू करें

हालांकि, नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) को चालू करने से पहले, आपको यह पक्का कर लेना चाहिए कि ऐसा करने से आपके मौजूदा उपयोगकर्ताओं पर कोई असर नहीं पड़ेगा. दूसरी ओर, अगर आपको अपने ऐप्लिकेशन संसाधनों का संदिग्ध इस्तेमाल दिखाई दे रहा है, तो आप जल्द ही एनफ़ोर्समेंट को चालू करना चाहें.

यह फ़ैसला लेने में मदद पाने के लिए, आप जिन सेवाओं का इस्तेमाल करते हैं उनसे जुड़े ऐप्लिकेशन की जांच की मेट्रिक देख सकते हैं:

ऐप्लिकेशन की जांच लागू करने की सुविधा चालू करें

जब आपको यह समझ में आ जाता है कि ऐप्लिकेशन की जांच किस तरह से आपके उपयोगकर्ताओं पर असर डालेगी, तब आप आगे बढ़ने के लिए तैयार हैं. इसके बाद, ऐप्लिकेशन की जांच के लिए नीति उल्लंघन ठीक करने का तरीका (एनफ़ोर्समेंट) चालू किया जा सकता है:

डीबग एनवायरमेंट में ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करना

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

Android पर डीबग की सेवा देने वाली कंपनी के साथ, ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करना लेख पढ़ें.