iOS पर 'Google साइन इन' के लिए ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल शुरू करना

इस पेज पर बताया गया है कि iOS ऐप्लिकेशन में ऐप्लिकेशन की जांच करने की सुविधा को कैसे चालू किया जाता है. ऐप्लिकेशन जांच की सुविधा को चालू करके, यह पक्का किया जा सकता है कि आपके प्रोजेक्ट के लिए सिर्फ़ आपका ऐप्लिकेशन ही Google के OAuth 2.0 एंडपॉइंट को ऐक्सेस कर सकता है. इस सुविधा की खास जानकारी देखें.

App Check, ऐप्लिकेशन को प्रमाणित करने की सुविधा का इस्तेमाल करके यह पुष्टि करता है कि OAuth 2.0 के अनुरोध आपके भरोसेमंद ऐप्लिकेशन से किए जा रहे हैं. ऐप्लिकेशन की जांच, धोखाधड़ी के जोखिम का विश्लेषण करने के लिए, ऐप्लिकेशन प्रमाणित करने की सुविधा का इस्तेमाल नहीं करती.

शुरू करने से पहले

  1. पक्का करें कि आपके पास Xcode 12.5 या उसके बाद का वर्शन हो.

  2. 'Google साइन-इन' लाइब्रेरी का इस्तेमाल करके, 'Google साइन-इन' को अपने iOS ऐप्लिकेशन में इंटिग्रेट करें.

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

  1. 'Google साइन इन' की मदद से ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करने के लिए, आपके पास Firebase प्रोजेक्ट होना चाहिए.

    • अगर आपके ऐप्लिकेशन में पहले से ही Firebase का इस्तेमाल किया जा रहा है, तो उसी प्रोजेक्ट का इस्तेमाल करें.

    • अगर आपके ऐप्लिकेशन में 'Google साइन इन' का इस्तेमाल किया जाता है, लेकिन Firebase का नहीं, तो आपके पास पहले से Google Cloud प्रोजेक्ट है. Firebase कंसोल में नया प्रोजेक्ट बनाते समय उस प्रोजेक्ट को चुनकर, Firebase को अपने Google Cloud प्रोजेक्ट में जोड़ें

    इसे भी देखें: Firebase प्रोजेक्ट और Google Cloud के बीच संबंध

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

  3. अपने ऐप्लिकेशन को रजिस्टर करें, ताकि आप Firebase कंसोल के ऐप्लिकेशन की जांच सेक्शन में, ऐप्लिकेशन प्रमाणित करने वाली कंपनी के साथ ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल कर सकें.

  4. पक्का करें कि आपके प्रोजेक्ट के सभी OAuth क्लाइंट किसी ऐप्लिकेशन से लिंक किए गए हों.

    अगर आपने क्लाइंट को अनलिंक किया है, तो आपको ऐप्लिकेशन की जांच पेज पर, iOS के लिए Google Identity सेक्शन में एक मैसेज दिखेगा. इसमें लिखा होगा कि आपके पास n अनलिंक किए गए OAuth क्लाइंट हैं, जिनके लिए अतिरिक्त सेटअप की ज़रूरत है.

    इसके अलावा, अगर आपने ऐप्लिकेशन की जांच में कुछ OAuth क्लाइंट सेट अप करने के बाद उन्हें मिटा दिया है, तो आपको यह मैसेज दिखेगा कि आपने n ऐसे OAuth क्लाइंट जोड़े हैं जिनसे मेल खाने वाला कोई OAuth क्लाइंट नहीं मिला. मौजूदा बदलावों को मिटाकर, डेटा को सुरक्षित रूप से खाली किया जा सकता है.

    'Firebase कंसोल' के OAuth क्लाइंट पेज पर जाकर, अनलिंक किए गए क्लाइंट को किसी मौजूदा या नए ऐप्लिकेशन से जोड़ा जा सकता है.

2. अपने ऐप्लिकेशन में 'Google साइन इन' का बीटा वर्शन जोड़ें

  1. अपने Xcode प्रोजेक्ट में, 'Google साइन-इन' डिपेंडेंसी को वर्शन पर सेट करें 7.1.0-fac-beta-1.1.0:

    एसपीएम

    googlesignin-ios के डिपेंडेंसी नियम को सटीक वर्शन पर सेट करें: 7.1.0-fac-beta-1.1.0.

    CocoaPods

    अपना Podfile अपडेट करें:

    source 'https://github.com/CocoaPods/Specs.git'
    source 'https://github.com/firebase/SpecsDev.git'
    
    target 'YourAppName' do
      use_frameworks!
    
      pod 'GoogleSignIn',
          :git => 'https://github.com/google/GoogleSignIn-iOS.git',
          :tag => '7.1.0-fac-beta-1.1.0'
      pod 'GoogleSignInSwiftSupport'  # If you use SwiftUI.
    end
    

    इसके बाद, pod install चलाएं और बनाई गई .xcworkspace फ़ाइल खोलें.

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

  3. अपने प्रोजेक्ट की .entitlements फ़ाइल में, App Attest एनवायरमेंट को production पर सेट करें.

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

अपने ऐप्लिकेशन का ऐक्सेस पाने वाले व्यक्ति के didFinishLaunchingWithOptions तरीके से, GIDSignIn.sharedInstance.configure(completion:) पर कॉल करें. आपको अपने ऐप्लिकेशन की लाइफ़साइकल में जल्द से जल्द इस तरीके का इस्तेमाल करना चाहिए, ताकि यूज़र-पर्सीव्ड इंतज़ार का समय कम किया जा सके.

import SwiftUI
import GoogleSignIn

class AppDelegate: NSObject, UIApplicationDelegate {
  func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil
  ) -> Bool {
    #if targetEnvironment(simulator)
    // Configure for debugging.
    // See: https://developers.google.com/identity/sign-in/ios/appcheck/debug-provider
    #else
    GIDSignIn.sharedInstance.configure { error in
      if let error {
        print("Error configuring `GIDSignIn` for Firebase App Check: \(error)")
      }
    }
    #endif

    return true
  }
}

@main
struct YourAppNameApp: App {
  @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

  // ...
}

अगले चरण

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

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

मेट्रिक पर नज़र रखें

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

यह फ़ैसला लेने के लिए, 'Google साइन इन' के लिए ऐप्लिकेशन की जांच से जुड़ी मेट्रिक देखें.

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

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

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

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

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