Apple প্ল্যাটফর্মে বেনামে Firebase দিয়ে প্রমাণীকরণ করুন

আপনি Firebase এর সাথে প্রমাণীকরণের জন্য অস্থায়ী বেনামী অ্যাকাউন্ট তৈরি করতে এবং ব্যবহার করতে Firebase প্রমাণীকরণ ব্যবহার করতে পারেন। এই অস্থায়ী বেনামী অ্যাকাউন্টগুলি ব্যবহারকারীদের যারা এখনও আপনার অ্যাপে সাইন আপ করেননি তাদের নিরাপত্তা নিয়ম দ্বারা সুরক্ষিত ডেটার সাথে কাজ করার অনুমতি দিতে ব্যবহার করা যেতে পারে৷ যদি একজন বেনামী ব্যবহারকারী আপনার অ্যাপে সাইন আপ করার সিদ্ধান্ত নেন, আপনি তাদের সাইন-ইন শংসাপত্রগুলি বেনামী অ্যাকাউন্টে লিঙ্ক করতে পারেন যাতে তারা ভবিষ্যতের সেশনে তাদের সুরক্ষিত ডেটার সাথে কাজ চালিয়ে যেতে পারে।

তুমি শুরু করার আগে

ফায়ারবেস নির্ভরতা ইনস্টল এবং পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।

  1. Xcode-এ, আপনার অ্যাপ প্রকল্প খোলার সাথে, ফাইল > প্যাকেজ যোগ করুন -এ নেভিগেট করুন।
  2. অনুরোধ করা হলে, Firebase Apple প্ল্যাটফর্ম SDK সংগ্রহস্থল যোগ করুন:
  3.   https://github.com/firebase/firebase-ios-sdk
  4. ফায়ারবেস প্রমাণীকরণ লাইব্রেরি বেছে নিন।
  5. শেষ হয়ে গেলে, Xcode স্বয়ংক্রিয়ভাবে পটভূমিতে আপনার নির্ভরতাগুলি সমাধান এবং ডাউনলোড করা শুরু করবে।

এর পরে, কিছু কনফিগারেশন পদক্ষেপগুলি সম্পাদন করুন:

  1. আপনি যদি এখনও আপনার অ্যাপটিকে আপনার Firebase প্রকল্পের সাথে সংযুক্ত না করে থাকেন, তাহলে Firebase কনসোল থেকে তা করুন৷
  2. বেনামী প্রমাণীকরণ সক্ষম করুন:
    1. Firebase কনসোলে , Auth বিভাগটি খুলুন।
    2. সাইন-ইন পদ্ধতি পৃষ্ঠায়, বেনামী সাইন-ইন পদ্ধতি সক্ষম করুন।

বেনামে Firebase দিয়ে প্রমাণীকরণ করুন

যখন একজন সাইন-আউট হওয়া ব্যবহারকারী একটি অ্যাপ বৈশিষ্ট্য ব্যবহার করেন যার জন্য Firebase-এর সাথে প্রমাণীকরণের প্রয়োজন হয়, তখন নিম্নলিখিত ধাপগুলি সম্পূর্ণ করে বেনামে ব্যবহারকারীকে সাইন ইন করুন:

  1. আপনার UIApplicationDelegateFirebaseCore মডিউল আমদানি করুন, সেইসাথে আপনার অ্যাপ প্রতিনিধি যে কোনো Firebase মডিউল ব্যবহার করেন। উদাহরণস্বরূপ, ক্লাউড ফায়ারস্টোর এবং প্রমাণীকরণ ব্যবহার করতে:

    সুইফট

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    উদ্দেশ্য গ

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. একটি FirebaseApp শেয়ার করা উদাহরণ কনফিগার করুন, সাধারণত আপনার App ইনিশিয়ালাইজার বা অ্যাপ প্রতিনিধির application(_:didFinishLaunchingWithOptions:) পদ্ধতিতে:

    সুইফট

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

    উদ্দেশ্য গ

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. signInAnonymouslyWithCompletion: পদ্ধতিতে কল করুন:

    সুইফট

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

    উদ্দেশ্য গ

    [[FIRAuth auth] signInAnonymouslyWithCompletion:^(FIRAuthDataResult * _Nullable authResult,
                                                      NSError * _Nullable error) {
       // ...
     }];
    
  4. যদি signInAnonymouslyWithCompletion: পদ্ধতিটি ত্রুটি ছাড়াই সম্পূর্ণ হয়, আপনি FIRAuthDataResult অবজেক্ট থেকে বেনামী ব্যবহারকারীর অ্যাকাউন্ট ডেটা পেতে পারেন:

    সুইফট

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

    উদ্দেশ্য গ

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

একটি বেনামী অ্যাকাউন্ট একটি স্থায়ী অ্যাকাউন্টে রূপান্তর করুন

যখন একজন বেনামী ব্যবহারকারী আপনার অ্যাপে সাইন আপ করেন, তখন আপনি তাদের নতুন অ্যাকাউন্টের সাথে তাদের কাজ চালিয়ে যাওয়ার অনুমতি দিতে চাইতে পারেন—উদাহরণস্বরূপ, ব্যবহারকারীরা তাদের নতুন অ্যাকাউন্টে সাইন আপ করার আগে আপনি তাদের শপিং কার্টে যোগ করা আইটেমগুলি তৈরি করতে চাইতে পারেন। অ্যাকাউন্টের শপিং কার্ট। এটি করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:

  1. ব্যবহারকারী সাইন আপ করলে, ব্যবহারকারীর প্রমাণীকরণ প্রদানকারীর জন্য সাইন-ইন ফ্লো সম্পূর্ণ করুন, কিন্তু অন্তর্ভুক্ত নয়, FIRAuth.signInWith পদ্ধতিগুলির একটিতে কল করা। উদাহরণস্বরূপ, ব্যবহারকারীর গুগল আইডি টোকেন, ফেসবুক অ্যাক্সেস টোকেন বা ইমেল ঠিকানা এবং পাসওয়ার্ড পান।
  2. নতুন প্রমাণীকরণ প্রদানকারীর জন্য একটি FIRAuthCredential পান:

    Google সাইন-ইন
    সুইফট
    guard
      let authentication = user?.authentication,
      let idToken = authentication.idToken
    else {
      return
    }
    
    let credential = GoogleAuthProvider.credential(withIDToken: idToken,
                                                   accessToken: authentication.accessToken)
    
    উদ্দেশ্য গ
    GIDAuthentication *authentication = user.authentication;
    FIRAuthCredential *credential =
    [FIRGoogleAuthProvider credentialWithIDToken:authentication.idToken
                                     accessToken:authentication.accessToken];
    
    ফেসবুক লগইন
    সুইফট
    let credential = FacebookAuthProvider
      .credential(withAccessToken: AccessToken.current!.tokenString)
    
    উদ্দেশ্য গ
    FIRAuthCredential *credential = [FIRFacebookAuthProvider
        credentialWithAccessToken:[FBSDKAccessToken currentAccessToken].tokenString];
    
    ইমেল-পাসওয়ার্ড সাইন ইন
    সুইফট
    let credential = EmailAuthProvider.credential(withEmail: email, password: password)
    
    উদ্দেশ্য গ
    FIRAuthCredential *credential =
        [FIREmailAuthProvider credentialWithEmail:email
                                                 password:password];
    
  3. সাইন-ইন ব্যবহারকারীর linkWithCredential:completion: পদ্ধতিতে FIRAuthCredential অবজেক্টটি পাস করুন:

    সুইফট
        user.link(with: credential) { authResult, error in
      // ...
    }
    }
    
    উদ্দেশ্য গ
        [[FIRAuth auth].currentUser linkWithCredential:credential
        completion:^(FIRAuthDataResult *result, NSError *_Nullable error) {
      // ...
    }];
    

linkWithCredential:completion: কলটি সফল হলে, ব্যবহারকারীর নতুন অ্যাকাউন্ট বেনামী অ্যাকাউন্টের Firebase ডেটা অ্যাক্সেস করতে পারে।

পরবর্তী পদক্ষেপ

এখন যেহেতু ব্যবহারকারীরা Firebase দিয়ে প্রমাণীকরণ করতে পারে, আপনি Firebase নিয়মগুলি ব্যবহার করে আপনার Firebase ডাটাবেসের ডেটাতে তাদের অ্যাক্সেস নিয়ন্ত্রণ করতে পারেন।