इस पेज पर, Android ऐप्लिकेशन में App Check को चालू करने का तरीका बताया गया है. इसके लिए, पहले से मौजूद Play Integrity API का इस्तेमाल किया जाता है. App Check को चालू करने पर, यह पक्का किया जा सकता है कि सिर्फ़ आपका ऐप्लिकेशन आपके प्रोजेक्ट के Firebase संसाधनों को ऐक्सेस कर सकता है. इस सुविधा के बारे में खास जानकारी देखें.
फ़िलहाल, डिवाइस में पहले से मौजूद Play Integrity API की सुविधा, सिर्फ़ उन Android ऐप्लिकेशन के साथ काम करती है जिन्हें Google Play से डिस्ट्रिब्यूट किया जाता है. Play Integrity की ऑफ़-Play सुविधाओं का इस्तेमाल करने या अपने पसंद के App Check प्रोवाइडर के साथ App Check का इस्तेमाल करने के लिए, पसंद के मुताबिक App Check प्रोवाइडर लागू करना लेख पढ़ें.
1. अपना Firebase प्रोजेक्ट सेट अप करना
अगर आपने पहले से ही अपने Android प्रोजेक्ट में Firebase नहीं जोड़ा है, तो अब करें.
Play Integrity API को चालू करने के लिए:
Google Play Console में, अपने ऐप्लिकेशन को चुनें या अगर आपने पहले से ऐसा नहीं किया है, तो उसे जोड़ें.
रिलीज़ सेक्शन में, ऐप्लिकेशन के लिए पूरी सुरक्षा देने की सुविधा पर क्लिक करें.
पेज के Play Integrity API सेक्शन पर जाएं. इसके बाद, Cloud प्रोजेक्ट लिंक करें पर क्लिक करें. इसके बाद, Google Cloud प्रोजेक्ट की सूची से अपना Firebase प्रोजेक्ट चुनें. यहां चुना गया प्रोजेक्ट, वही Firebase प्रोजेक्ट होना चाहिए जिसमें आपने अपना ऐप्लिकेशन रजिस्टर किया है (अगला चरण देखें).
Firebase console के App Check सेक्शन में जाकर, Play Integrity की सेवा देने वाली कंपनी के साथ App Check का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन रजिस्टर करें. आपको अपने ऐप्लिकेशन के साइनिंग सर्टिफ़िकेट का SHA-256 फ़िंगरप्रिंट देना होगा.
आम तौर पर, आपको अपने प्रोजेक्ट के सभी ऐप्लिकेशन रजिस्टर करने होंगे. ऐसा इसलिए, क्योंकि Firebase प्रॉडक्ट के लिए नीति उल्लंघन ठीक करने की सुविधा चालू करने के बाद, सिर्फ़ रजिस्टर किए गए ऐप्लिकेशन ही प्रॉडक्ट के बैकएंड संसाधनों को ऐक्सेस कर पाएंगे.
ज़रूरी नहीं: ऐप्लिकेशन रजिस्टर करने की सेटिंग में, सेवा देने वाली कंपनी से मिले App Check टोकन के लिए, टाइम टू लिव (टीटीएल) को कस्टमाइज़ करें. टीटीएल को 30 मिनट से लेकर सात दिनों के बीच की किसी भी वैल्यू पर सेट किया जा सकता है. इस वैल्यू को बदलते समय, इन बातों का ध्यान रखें:
- सुरक्षा: कम टीटीएल से ज़्यादा सुरक्षा मिलती है, क्योंकि इससे उस समयावधि में कमी आती है जिसमें हैकर, लीक या इंटरसेप्ट किए गए टोकन का गलत इस्तेमाल कर सकता है.
- परफ़ॉर्मेंस: टीटीएल कम होने का मतलब है कि आपका ऐप्लिकेशन ज़्यादा बार पुष्टि करेगा. ऐप्लिकेशन की पुष्टि करने की प्रोसेस हर बार नेटवर्क अनुरोधों में इंतज़ार का समय जोड़ती है. इसलिए, कम टीटीएल से आपके ऐप्लिकेशन की परफ़ॉर्मेंस पर असर पड़ सकता है.
- कोटा और कीमत: कम टीटीएल और बार-बार फिर से पुष्टि करने से, आपका कोटा तेज़ी से कम हो जाता है. साथ ही, पैसे चुकाकर ली जाने वाली सेवाओं के लिए, ज़्यादा शुल्क लिया जा सकता है. कोटा और सीमाएं देखें.
ज़्यादातर ऐप्लिकेशन के लिए, डिफ़ॉल्ट तौर पर एक घंटे का TTL सही होता है. ध्यान दें कि App Check लाइब्रेरी, टोकन को टीटीएल की अवधि के करीब आधे समय पर रीफ़्रेश करती है.
2. अपने ऐप्लिकेशन में App Check लाइब्रेरी जोड़ना
अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर<project>/<app-module>/build.gradle.kts
या
<project>/<app-module>/build.gradle
) में, Android के लिए App Check लाइब्रेरी की डिपेंडेंसी जोड़ें. हमारा सुझाव है कि लाइब्रेरी के वर्शन को कंट्रोल करने के लिए, Firebase Android BoM का इस्तेमाल करें.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.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") }
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") }
3. App Check शुरू करना
अपने ऐप्लिकेशन में नीचे दिया गया कोड जोड़ें, ताकि किसी भी दूसरे 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());
अगले चरण
App Check लाइब्रेरी आपके ऐप्लिकेशन में इंस्टॉल होने के बाद, अपने उपयोगकर्ताओं को अपडेट किया गया ऐप्लिकेशन डिस्ट्रिब्यूट करना शुरू करें.
अपडेट किया गया क्लाइंट ऐप्लिकेशन, Firebase को किए जाने वाले हर अनुरोध के साथ App Check टोकन भेजना शुरू कर देगा. हालांकि, Firebase के प्रॉडक्ट के लिए टोकन तब तक मान्य नहीं होने चाहिए, जब तक Firebase कंसोल के App Check सेक्शन में नीति उल्लंघन ठीक करने की सुविधा चालू नहीं की जाती.
मेट्रिक मॉनिटर करना और नीति उल्लंघन ठीक करने की सुविधा चालू करना
हालांकि, नीति उल्लंघन ठीक करने की सुविधा चालू करने से पहले, आपको यह पक्का करना होगा कि इससे आपके मौजूदा मान्य उपयोगकर्ताओं को कोई परेशानी न हो. दूसरी ओर, अगर आपको अपने ऐप्लिकेशन के संसाधनों का संदिग्ध इस्तेमाल दिख रहा है, तो हो सकता है कि आप जल्द से जल्द नीति उल्लंघन ठीक करने की सुविधा चालू करना चाहें.
यह फ़ैसला लेने में मदद पाने के लिए, इस्तेमाल की जा रही सेवाओं के लिए App Check मेट्रिक देखी जा सकती हैं:
- Realtime Database, Cloud Firestore, Cloud Storage, Authentication (बीटा वर्शन), और Vertex AI in Firebase के लिए, App Check अनुरोध मेट्रिक को मॉनिटर करें.
- Cloud Functions के लिए, App Check अनुरोध मेट्रिक पर नज़र रखें.
App Check एनफ़ोर्समेंट चालू करना
जब आपको यह समझ आ जाए कि App Check से आपके उपयोगकर्ताओं पर क्या असर पड़ेगा और आप आगे बढ़ने के लिए तैयार हों, तो App Check लागू करने की सुविधा चालू की जा सकती है:
- Realtime Database, Cloud Firestore, Cloud Storage, Authentication (बीटा वर्शन), और Vertex AI in Firebase के लिए, नीति उल्लंघन ठीक करने के लिए App Check को चालू करें.
- Cloud Functions के लिए, App Check को लागू करने की सुविधा चालू करें.
डीबग एनवायरमेंट में App Check का इस्तेमाल करना
अगर App Check के लिए अपने ऐप्लिकेशन को रजिस्टर करने के बाद, आपको अपने ऐप्लिकेशन को ऐसे एनवायरमेंट में चलाना है जिसे App Check आम तौर पर मान्य नहीं मानता, जैसे कि डेवलपमेंट के दौरान एमुलेटर या लगातार इंटिग्रेशन (सीआई) एनवायरमेंट, तो अपने ऐप्लिकेशन का डीबग बिल्ड बनाया जा सकता है. यह बिल्ड, पुष्टि करने वाली असली कंपनी के बजाय App Check डीबग प्रोवाइडर का इस्तेमाल करता है.
Android पर डीबग प्रोवाइडर के साथ App Check का इस्तेमाल करना देखें.