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

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

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

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

  1. अपने डीबग बिल्ड में, Firebase की किसी भी बैकएंड सेवा का इस्तेमाल करने से पहले, App Check के डीबग प्रोवाइडर की फ़ैक्ट्री बनाएं और उसे सेट करें: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. ऐप्लिकेशन लॉन्च करें. जब SDK टूल, बैकएंड को कोई अनुरोध भेजने की कोशिश करेगा, तब स्थानीय डीबग टोकन लॉग किया जाएगा. उदाहरण के लिए:

    <Warning> [AppCheckCore][I-GAC004001] App Check debug token:
    '123a4567-b89c-12d3-e456-789012345678'.
  3. Firebase console में, सुरक्षा > App Check पर जाएं.

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

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

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

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

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

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

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

  1. Firebase console में, सुरक्षा > App Check > ऐप्लिकेशन पर जाएं.

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

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

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

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

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

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

  5. Xcode में, अपने टेस्टिंग स्कीम में AppCheckDebugToken नाम से एक एनवायरमेंट वैरिएबल जोड़ें. साथ ही, इसकी वैल्यू के तौर पर $(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 के डीबग प्रोवाइडर की फ़ैक्ट्री बनाएं और उसे सेट करें: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 की बैकएंड सेवाएं, भेजे गए टोकन को मान्य मानती हैं.