Apple प्लैटफ़ॉर्म पर Firebase से पुष्टि करें

आप Firebase Authentication का इस्तेमाल करके, कुछ समय के लिए पहचान छिपाने वाले खाते बना सकते हैं और उनका इस्तेमाल कर सकते हैं का इस्तेमाल करें. इन कुछ समय तक पहचान छिपाने वाले खातों का इस्तेमाल, इन कामों के लिए किया जा सकता है इससे उन उपयोगकर्ताओं को डेटा की सुरक्षा करने की सुविधा मिलेगी जिन्होंने अब तक आपके ऐप्लिकेशन में साइन अप नहीं किया है सुरक्षा नियमों के मुताबिक काम करता है. अगर कोई उपयोगकर्ता पहचान छिपाने वाला है और आपके ऐप्लिकेशन में साइन अप करना चाहता है, तो ये काम किए जा सकते हैं अपने साइन-इन क्रेडेंशियल को पहचान छिपाकर 'शोकेस' का इस्तेमाल करने वाले account ताकि वे आगे के सेशन.

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

  1. Firebase डिपेंडेंसी इंस्टॉल और मैनेज करने के लिए, Swift पैकेज मैनेजर का इस्तेमाल करें.

    1. Xcode में, अपना ऐप्लिकेशन प्रोजेक्ट खोलने के लिए, फ़ाइल > पैकेज जोड़ना.
    2. जब कहा जाए, तब Firebase Apple प्लैटफ़ॉर्म SDK टूल का रिपॉज़िटरी जोड़ें:
    3.   https://github.com/firebase/firebase-ios-sdk.git
    4. Firebase Authentication लाइब्रेरी चुनें.
    5. अपने टारगेट की बिल्ड सेटिंग के अन्य लिंकर फ़्लैग सेक्शन में -ObjC फ़्लैग जोड़ें.
    6. यह काम पूरा होने पर, Xcode अपने-आप रिज़ॉल्व और डाउनलोड होना शुरू कर देगा पर निर्भर करता है.
  2. अगर आपने अभी तक अपने ऐप्लिकेशन को Firebase प्रोजेक्ट से कनेक्ट नहीं किया है, तो Firebase कंसोल.
  3. पहचान छिपाकर पुष्टि करने की सुविधा चालू करें:
    1. Firebase कंसोल में, पुष्टि सेक्शन खोलें.
    2. साइन इन करने के तरीके पेज पर, पहचान ज़ाहिर न करने वाला विकल्प चालू करें साइन-इन करने का तरीका.
    3. ज़रूरी नहीं: अगर आपने अपना प्रोजेक्ट Firebase Authentication with Identity Platform, डेटा अपने-आप हटाने की सुविधा चालू की जा सकती है. टास्क कब शुरू होगा यह सेटिंग चालू करने पर, पहचान छिपाकर 30 दिनों से ज़्यादा पुराने खाते अपने-आप बंद हो जाएंगे हटाया गया. जिन प्रोजेक्ट में अपने-आप क्लीनअप की सुविधा चालू होती है उनमें पहचान छिपाकर पुष्टि करने की सुविधा काम नहीं करेगी इस्तेमाल की सीमाओं या बिलिंग कोटा में गिना जाता है. यहां जाएं: अपने-आप क्लीनअप.

पहचान छिपाकर Firebase की मदद से पुष्टि करें

जब कोई साइन-आउट उपयोगकर्ता किसी ऐसी ऐप्लिकेशन सुविधा का इस्तेमाल करता है जिसके लिए पुष्टि करना ज़रूरी है Firebase का इस्तेमाल करते हैं, तो नीचे दिए गए चरणों को पूरा करके उपयोगकर्ता की पहचान छिपाकर साइन इन करें:

  1. अपने इसमें FirebaseCore मॉड्यूल को इंपोर्ट करें UIApplicationDelegate और अन्य वे Firebase मॉड्यूल जिनका इस्तेमाल आपका ऐप्लिकेशन मैनेज करने का ऐक्सेस देने वाला व्यक्ति करता है. उदाहरण के लिए, Cloud Firestore और Authentication का इस्तेमाल करने के लिए:

    स्विफ़्टयूआई

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. कॉन्फ़िगर करें FirebaseApp आपके ऐप्लिकेशन डेलिगेट के शेयर किए गए इंस्टेंस में application(_:didFinishLaunchingWithOptions:) तरीका:

    स्विफ़्टयूआई

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. अगर SwiftUI का इस्तेमाल किया जा रहा है, तो आपको ऐप्लिकेशन का ऐक्सेस देना होगा और उसे अटैच करना होगा UIApplicationDelegateAdaptor के ज़रिए अपने App निर्देश को या NSApplicationDelegateAdaptor. आपको ऐप्लिकेशन सौंपने की सुविधा को स्वाइप करने की सुविधा भी बंद करनी होगी. इसके लिए ज़्यादा जानकारी के लिए, SwiftUI के निर्देश देखें.

    स्विफ़्टयूआई

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. signInAnonymouslyWithCompletion: तरीके को कॉल करें:

    Swift

    Auth.auth().signInAnonymously { authResult, error in
      // ...
    }

    Objective-C

    [[FIRAuth auth] signInAnonymouslyWithCompletion:^(FIRAuthDataResult * _Nullable authResult,
                                                      NSError * _Nullable error) {
       // ...
     }];
  5. अगर signInAnonymouslyWithCompletion: तरीका पूरा हो जाता है बिना किसी गड़बड़ी के, आप FIRAuthDataResult ऑब्जेक्ट:

    Swift

    guard let user = authResult?.user else { return }
    let isAnonymous = user.isAnonymous  // true
    let uid = user.uid

    Objective-C

    FIRUser *user = authResult.user;
    BOOL isAnonymous = user.anonymous;  // YES
    NSString *uid = user.uid;

पहचान छिपाने वाले खाते को स्थायी खाते में बदलना

जब कोई ऐसा उपयोगकर्ता आपके ऐप्लिकेशन में साइन अप करता है जिसकी पहचान छिपी होती है, तो हो सकता है कि आप उसे अनुमति देना चाहें नए खाते के साथ अपना काम जारी रख सकते हैं—उदाहरण के लिए, साइन अप करने से पहले उपयोगकर्ता के शॉपिंग कार्ट में जोड़े गए आइटम उपलब्ध कराता हो अपने नए खाते के शॉपिंग कार्ट में स्टोर कर सकते हैं. ऐसा करने के लिए, नीचे दिए गए काम करें चरण:

  1. उपयोगकर्ता के साइन अप करने पर, उपयोगकर्ता के करता है. हालांकि, इसमें से किसी एक FIRAuth.signInWith तरीके. उदाहरण के लिए, उपयोगकर्ता का Google आईडी टोकन पाएं, Facebook ऐक्सेस टोकन या ईमेल पता और पासवर्ड.
  2. पुष्टि करने वाली नई कंपनी के लिए, FIRAuthCredential पाएं:

    Google साइन-इन
    Swift
    guard
      let authentication = user?.authentication,
      let idToken = authentication.idToken
    else {
      return
    }
    
    let credential = GoogleAuthProvider.credential(withIDToken: idToken,
                                                   accessToken: authentication.accessToken)
    Objective-C
    FIRAuthCredential *credential =
    [FIRGoogleAuthProvider credentialWithIDToken:result.user.idToken.tokenString
                                     accessToken:result.user.accessToken.tokenString];
    Facebook में लॉगिन करें
    Swift
    let credential = FacebookAuthProvider
      .credential(withAccessToken: AccessToken.current!.tokenString)
    Objective-C
    FIRAuthCredential *credential = [FIRFacebookAuthProvider
        credentialWithAccessToken:[FBSDKAccessToken currentAccessToken].tokenString];
    ईमेल-पासवर्ड से साइन-इन
    Swift
    let credential = EmailAuthProvider.credential(withEmail: email, password: password)
    Objective-C
    FIRAuthCredential *credential =
        [FIREmailAuthProvider credentialWithEmail:email
                                                 password:password];
  3. साइन इन करने वाले उपयोगकर्ता को FIRAuthCredential ऑब्जेक्ट दें linkWithCredential:completion: तरीका:

    Swift
        user.link(with: credential) { authResult, error in
      // ...
    }
    }
    Objective-C
        [[FIRAuth auth].currentUser linkWithCredential:credential
        completion:^(FIRAuthDataResult *result, NSError *_Nullable error) {
      // ...
    }];

अगर linkWithCredential:completion: को कॉल किया जाता है, तो उपयोगकर्ता का नया खाता ये काम कर सकता है: उस खाते का Firebase डेटा ऐक्सेस करें.

अपने-आप क्लीनअप की सुविधा

अगर आपने अपने प्रोजेक्ट को Firebase Authentication with Identity Platform में अपग्रेड किया है, तो ये काम किए जा सकते हैं Firebase कंसोल में अपने-आप क्लीनअप की सुविधा चालू करें. जब आप इस सुविधा को सक्षम करते हैं तो आप इसकी अनुमति देते हैं Firebase, पहचान छिपाकर 30 दिनों से ज़्यादा पुराने खातों को अपने-आप मिटा देगा. अपने-आप काम करने वाले प्रोजेक्ट में क्लीन-अप चालू किया गया, तो पहचान ज़ाहिर किए बिना पुष्टि करने की सुविधा को इस्तेमाल की सीमाओं या बिलिंग कोटा में नहीं गिना जाएगा.

  • अपने-आप क्लीनअप की सुविधा चालू करने के बाद, बनाया गया कोई भी पहचान छिपाने वाला खाता अपने-आप हट सकता है बनाए जाने के 30 दिनों के बाद, किसी भी समय मिटाया जा सकता है.
  • मौजूदा अनाम खाते, 30 दिनों के बाद अपने-आप मिट जाएंगे अपने-आप क्लीनअप की सुविधा चालू करना.
  • अगर आपने अपने-आप क्लीनअप की सुविधा बंद की है, तो जिन भी खातों को हटाने के लिए शेड्यूल किया गया है वे मौजूद रहेंगे मिटाने के लिए शेड्यूल किया गया है.
  • अगर आप "अपग्रेड" करते हैं, तो किसी अनाम खाते को किसी भी साइन-इन विधि से लिंक करने पर, वह खाता अपने-आप नहीं मिटता.

यदि आप देखना चाहते हैं कि इस सुविधा को सक्षम करने से पहले कितने उपयोगकर्ता प्रभावित होंगे, और आपने ने आपके प्रोजेक्ट को Firebase Authentication with Identity Platform पर अपग्रेड किया है. आप फ़िल्टर कर सकते हैं क्लाउड में is_anon लॉग करना.

अगले चरण

अब उपयोगकर्ता Firebase की मदद से पुष्टि कर सकते हैं. इसलिए, अब आपके पास उनके ऐक्सेस को कंट्रोल करने का विकल्प है डेटा का उपयोग करके अपने Firebase डेटाबेस में रखें Firebase के नियम.