Apple प्लैटफ़ॉर्म पर, डीबग की सेवा देने वाली कंपनी के साथ ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करना

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

डेवलपमेंट के दौरान, डीबग प्रोवाइडर का इस्तेमाल करना

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

  1. अपने डीबग बिल्ड में, Firebase की किसी भी बैकएंड सेवा का इस्तेमाल करने से पहले, App Check डीबग प्रोवाइडर फ़ैक्ट्री को बनाएं और सेट करें:

    Swift

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Objective-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];
  2. अपने Xcode प्रोजेक्ट (वर्शन 11.0 या नया) में, डीबग लॉगिंग की सुविधा चालू करें:

    1. Product > Scheme > Edit scheme खोलें.
    2. बाईं ओर मौजूद मेन्यू में जाकर, Run को चुनें. इसके बाद, Arguments टैब को चुनें.
    3. Arguments Passed on Launch सेक्शन में, -FIRDebugEnabled जोड़ें.
  3. ऐप्लिकेशन लॉन्च करें. जब SDK, बैकएंड को कोई अनुरोध भेजने की कोशिश करेगा, तब स्थानीय डीबग टोकन लॉग हो जाएगा. उदाहरण के लिए:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. Firebase कंसोल में, सुरक्षा > App Check पर जाएं.

  5. अभी लॉग किए गए डीबग टोकन को रजिस्टर करें.

    1. ऐप्लिकेशन टैब में, अपना ऐप्लिकेशन ढूंढें.
    2. अपने ऐप्लिकेशन के ओवरफ़्लो मेन्यू में जाकर, डीबग टोकन मैनेज करें को चुनें.
    3. अपने डीबग टोकन को रजिस्टर करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.

    'डीबग टोकन मैनेज करें' मेन्यू आइटम का स्क्रीनशॉट

टोकन रजिस्टर करने के बाद, Firebase की बैकएंड सेवाएं इसे मान्य मानेंगी.

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

सीआई एनवायरमेंट में, डीबग प्रोवाइडर का इस्तेमाल करना

कंटीन्यूअस इंटिग्रेशन (सीआई) एनवायरमेंट में, डीबग प्रोवाइडर का इस्तेमाल करने के लिए, यह तरीका अपनाएं:

  1. Firebase कंसोल में, सुरक्षा > App Check पर जाएं.

  2. कोई डीबग टोकन बनाएं. आपको अगले चरण में इस टोकन की ज़रूरत पड़ेगी.

    1. ऐप्लिकेशन टैब में, अपना ऐप्लिकेशन ढूंढें.
    2. अपने ऐप्लिकेशन के ओवरफ़्लो मेन्यू में जाकर, डीबग टोकन मैनेज करें को चुनें.
    3. नया डीबग टोकन बनाने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.

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

    'डीबग टोकन मैनेज करें' मेन्यू आइटम का स्क्रीनशॉट

  3. अभी बनाए गए डीबग टोकन को, अपने सीआई सिस्टम के सुरक्षित की स्टोर में जोड़ें . जैसे, GitHub Actions के एन्क्रिप्ट किए गए सीक्रेट या Travis CI के एन्क्रिप्ट किए गए वैरिएबल.

  4. अगर ज़रूरी हो, तो अपने सीआई सिस्टम को कॉन्फ़िगर करें, ताकि सीआई एनवायरमेंट में आपका डीबग टोकन, एनवायरमेंट वैरिएबल के तौर पर उपलब्ध हो. वैरिएबल को कोई ऐसा नाम दें जो APP_CHECK_DEBUG_TOKEN_FROM_CI जैसा हो.

  5. Xcode में, अपने टेस्टिंग स्कीम में FIRAAppCheckDebugToken नाम का एनवायरमेंट वैरिएबल जोड़ें. साथ ही, इसकी वैल्यू के तौर पर $(APP_CHECK_DEBUG_TOKEN) जैसा कोई नाम जोड़ें.

  6. अपने सीआई टेस्ट स्क्रिप्ट को कॉन्फ़िगर करें, ताकि डीबग टोकन को एनवायरमेंट वैरिएबल के तौर पर पास किया जा सके. उदाहरण के लिए:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  7. अपने डीबग बिल्ड में, Firebase की किसी भी बैकएंड सेवा का इस्तेमाल करने से पहले, App Check डीबग प्रोवाइडर फ़ैक्ट्री को बनाएं और सेट करें:

    Swift

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Objective-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];

जब आपका ऐप्लिकेशन सीआई एनवायरमेंट में चलेगा, तब Firebase की बैकएंड सेवाएं, भेजे गए टोकन को मान्य मानेंगी.