Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

ऐपल प्लेटफॉर्म पर ऐप अटेस्ट के साथ ऐप चेक का इस्तेमाल शुरू करें

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

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

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

यदि आप अपने स्वयं के कस्टम प्रदाता के साथ ऐप चेक का उपयोग करना चाहते हैं, तो कस्टम ऐप चेक प्रदाता लागू करें देखें

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

  1. App Attest का उपयोग करने के लिए आपको Xcode 12.5+ की आवश्यकता होगी।

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

  3. ऐप चेक का उपयोग करने के लिए अपने ऐप को फ़ायरबेस कंसोल के ऐप चेक सेक्शन में ऐप अटेस्ट प्रोवाइडर के साथ रजिस्टर करें।

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

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

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

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

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

  1. अपने प्रोजेक्ट के Podfile में ऐप चेक के लिए निर्भरता जोड़ें:

    pod 'FirebaseAppCheck'

    या, वैकल्पिक रूप से, आप इसके बजाय स्विफ्ट पैकेज मैनेजर का उपयोग कर सकते हैं।

    सुनिश्चित करें कि आप किसी अन्य Firebase SDK के नवीनतम संस्करण का भी उपयोग कर रहे हैं, जिस पर आप निर्भर हैं।

  2. pod install चलाएँ और बनाई गई .xcworkspace फ़ाइल खोलें।

  3. Xcode में, अपने ऐप में ऐप अटेस्ट क्षमता जोड़ें।

  4. अपने प्रोजेक्ट की .entitlements फ़ाइल में, App Attest परिवेश को production पर सेट करें।

3. ऐप चेक इनिशियलाइज़ करें

किसी अन्य Firebase SDK का उपयोग करने से पहले आपको ऐप चेक इनिशियलाइज़ करना होगा।

सबसे पहले, AppCheckProviderFactory का कार्यान्वयन लिखें। आपके कार्यान्वयन की विशिष्टता आपके उपयोग के मामले पर निर्भर करेगी।

उदाहरण के लिए, यदि आपके पास केवल iOS 14 और उसके बाद के उपयोगकर्ता हैं, तो आप हमेशा AppAttestProvider ऑब्जेक्ट बना सकते हैं:

तीव्र

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

class YourSimpleAppCheckProviderFactory: NSObject, AppCheckProviderFactory {
  func createProvider(with app: FirebaseApp) -> AppCheckProvider? {
    return AppAttestProvider(app: app)
  }
}

उद्देश्य सी

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

@interface YourSimpleAppCheckProviderFactory : NSObject <FIRAppCheckProviderFactory>
@end

@implementation YourSimpleAppCheckProviderFactory

- (nullable id<FIRAppCheckProvider>)createProviderWithApp:(nonnull FIRApp *)app {
  return [[FIRAppAttestProvider alloc] initWithApp:app];
}

@end

या, आप iOS 14 और बाद के संस्करणों पर AppAttestProvider ऑब्जेक्ट बना सकते हैं, और पुराने संस्करणों पर DeviceCheckProvider पर वापस आ सकते हैं:

तीव्र

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

class YourAppCheckProviderFactory: NSObject, AppCheckProviderFactory {
  func createProvider(with app: FirebaseApp) -> AppCheckProvider? {
    if #available(iOS 14.0, *) {
      return AppAttestProvider(app: app)
    } else {
      return DeviceCheckProvider(app: app)
    }
  }
}

उद्देश्य सी

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

@interface YourAppCheckProviderFactory : NSObject <FIRAppCheckProviderFactory>
@end

@implementation YourAppCheckProviderFactory

- (nullable id<FIRAppCheckProvider>)createProviderWithApp:(nonnull FIRApp *)app {
  if (@available(iOS 14.0, *)) {
    return [[FIRAppAttestProvider alloc] initWithApp:app];
  } else {
    return [[FIRDeviceCheckProvider alloc] initWithApp:app];
  }
}

@end

आपके द्वारा AppCheckProviderFactory क्लास लागू करने के बाद, ऐप चेक को इसका उपयोग करने के लिए कॉन्फ़िगर करें:

तीव्र

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

let providerFactory = YourAppCheckProviderFactory()
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

उद्देश्य सी

नोट: यह Firebase उत्पाद watchOS लक्ष्यों पर उपलब्ध नहीं है।

YourAppCheckProviderFactory *providerFactory =
        [[YourAppCheckProviderFactory alloc] init];
[FIRAppCheck setAppCheckProviderFactory:providerFactory];

[FIRApp configure];

अगले कदम

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

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

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

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

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

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

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

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

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

ऐप्पल प्लेटफ़ॉर्म पर डीबग प्रदाता के साथ ऐप चेक का उपयोग करें देखें।