Unity के लिए पासवर्ड-आधारित खातों का इस्तेमाल करके Firebase से पुष्टि करें

Firebase Authentication का इस्तेमाल करके, आप अपने उपयोगकर्ताओं को Firebase अपने ईमेल पते और पासवर्ड का इस्तेमाल करके और आपके ऐप्लिकेशन के पासवर्ड वाले खाते.

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

इस्तेमाल करने से पहले Firebase Authentication, आपको ये काम करने होंगे:

  • अपना Unity प्रोजेक्ट रजिस्टर करें और इसे Firebase का इस्तेमाल करने के लिए कॉन्फ़िगर करें.

    • अगर आपके यूनिटी प्रोजेक्ट में पहले से ही Firebase का इस्तेमाल किया जा रहा है, तो इसका मतलब है कि Firebase के लिए रजिस्टर और कॉन्फ़िगर किया गया है.

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

  • Firebase Unity SDK टूल (खास तौर पर, FirebaseAuth.unitypackage) जोड़ें आपका Unity प्रोजेक्ट भी सही है.

ध्यान दें कि Firebase को अपने यूनिटी प्रोजेक्ट में जोड़ने पर, Firebase कंसोल और आपके ओपन Unity प्रोजेक्ट में उदाहरण के लिए, कंसोल से Firebase कॉन्फ़िगरेशन फ़ाइलें डाउनलोड करें. इसके बाद, उन्हें आपके Unity प्रोजेक्ट में शामिल किया जाएगा.

Firebase.Auth.FirebaseAuth क्लास को ऐक्सेस करें

FirebaseAuth क्लास, सभी एपीआई कॉल के लिए गेटवे होती है. इसे FirebaseAuth.DefaultInstance के ज़रिए ऐक्सेस किया जा सकता है.
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;

पासवर्ड पर आधारित खाता बनाना

पासवर्ड का इस्तेमाल करके नया उपयोगकर्ता खाता बनाने के लिए, यहां दिया गया तरीका अपनाएं: आपके ऐप्लिकेशन का साइन-इन कोड:

  1. जब कोई नया उपयोगकर्ता आपके ऐप्लिकेशन के साइन-अप फ़ॉर्म का इस्तेमाल करके साइन अप करता है, तो कोई भी नया उपयोगकर्ता खाते की पुष्टि करने के वे चरण जो आपके ऐप्लिकेशन को ज़रूरी हैं, जैसे कि नए खाते का पासवर्ड सही तरीके से टाइप किया गया है और वह आपकी जटिलता का पालन करता है ज़रूरतें.
  2. नए उपयोगकर्ता का ईमेल पता और पासवर्ड पास करके नया खाता बनाना FirebaseAuth.CreateUserWithEmailAndPassword को:
    auth.CreateUserWithEmailAndPasswordAsync(email, password).ContinueWith(task => {
      if (task.IsCanceled) {
        Debug.LogError("CreateUserWithEmailAndPasswordAsync was canceled.");
        return;
      }
      if (task.IsFaulted) {
        Debug.LogError("CreateUserWithEmailAndPasswordAsync encountered an error: " + task.Exception);
        return;
      }
    
      // Firebase user has been created.
      Firebase.Auth.AuthResult result = task.Result;
      Debug.LogFormat("Firebase user created successfully: {0} ({1})",
          result.User.DisplayName, result.User.UserId);
    });
    

ईमेल पते और पासवर्ड वाले उपयोगकर्ता खाते में साइन इन करें

पासवर्ड से उपयोगकर्ता साइन इन करने का तरीका, नया खाता बनाने के लिए. अपने ऐप्लिकेशन के साइन-इन फ़ंक्शन में, ये काम करें:

  1. जब कोई उपयोगकर्ता आपके ऐप्लिकेशन में साइन इन करता है, तो उपयोगकर्ता का ईमेल पता पास करें और FirebaseAuth.SignInWithEmailAndPassword का पासवर्ड:
    auth.SignInWithEmailAndPasswordAsync(email, password).ContinueWith(task => {
      if (task.IsCanceled) {
        Debug.LogError("SignInWithEmailAndPasswordAsync was canceled.");
        return;
      }
      if (task.IsFaulted) {
        Debug.LogError("SignInWithEmailAndPasswordAsync encountered an error: " + task.Exception);
        return;
      }
    
      Firebase.Auth.AuthResult result = task.Result;
      Debug.LogFormat("User signed in successfully: {0} ({1})",
          result.User.DisplayName, result.User.UserId);
    });
    
  2. इसके अलावा, क्रेडेंशियल भी बनाए जा सकते हैं और अन्य वर्कफ़्लो की तरह साइन इन किया जा सकता है:
    Firebase.Auth.Credential credential =
        Firebase.Auth.EmailAuthProvider.GetCredential(email, password);
    auth.SignInAndRetrieveDataWithCredentialAsync(credential).ContinueWith(task => {
      if (task.IsCanceled) {
        Debug.LogError("SignInAndRetrieveDataWithCredentialAsync was canceled.");
        return;
      }
      if (task.IsFaulted) {
        Debug.LogError("SignInAndRetrieveDataWithCredentialAsync encountered an error: " + task.Exception);
        return;
      }
    
      Firebase.Auth.AuthResult result = task.Result;
      Debug.LogFormat("User signed in successfully: {0} ({1})",
          result.User.DisplayName, result.User.UserId);
    });
    
    अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

सुझाया गया: ईमेल गिनती सुरक्षा चालू करें

कुछ Firebase Authentication ऐसे तरीके जो ईमेल पतों को पैरामीटर के रूप में लेते हैं अगर किसी ईमेल पते को रजिस्टर नहीं किया गया है, तो उस समय दिखने वाली गड़बड़ी (उदाहरण के लिए, ईमेल पते और पासवर्ड से साइन इन करते समय) या जब इस्तेमाल नहीं किया गया हो. उदाहरण के लिए, उपयोगकर्ता का ईमेल पता बदलते समय. इससे लोगों को कुछ खास तरीकों के बारे में सुझाव देने में मदद मिल सकती है. हालांकि, यह तरीका भी मददगार हो सकता है गलत तरीके से नुकसान पहुंचाने वाले लोगों या ग्रुप का गलत इस्तेमाल, उपयोगकर्ता.

इस जोखिम को कम करने के लिए, हमारा सुझाव है कि आप ईमेल पता सुरक्षा चालू करें अपने प्रोजेक्ट के लिए, Google Cloud gcloud टूल का इस्तेमाल करें. ध्यान दें कि इसे चालू करने से यह सुविधा, गड़बड़ी की रिपोर्ट करने के Firebase Authentication के तरीके में बदलाव करती है: पक्का करें कि आपका ऐप्लिकेशन में सबसे सटीक गड़बड़ियों पर निर्भर नहीं रहता है.

अगले चरण

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

  • अपने ऐप्लिकेशन में, उपयोगकर्ता की बुनियादी प्रोफ़ाइल जानकारी को Firebase.Auth.FirebaseUser ऑब्जेक्ट:

    Firebase.Auth.FirebaseUser user = auth.CurrentUser;
    if (user != null) {
      string name = user.DisplayName;
      string email = user.Email;
      System.Uri photo_url = user.PhotoUrl;
      // The user's Id, unique to the Firebase project.
      // Do NOT use this value to authenticate with your backend server, if you
      // have one; use User.TokenAsync() instead.
      string uid = user.UserId;
    }
    
  • आपके Firebase Realtime Database और Cloud Storage में सुरक्षा के नियम, ये काम किए जा सकते हैं auth वैरिएबल से साइन-इन किए हुए उपयोगकर्ता का यूनीक यूज़र आईडी पाएं, और इसका इस्तेमाल करके यह कंट्रोल किया जा सकता है कि उपयोगकर्ता कौनसा डेटा ऐक्सेस कर सकता है.

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

उपयोगकर्ता को साइन आउट करने के लिए पर कॉल करें SignOut():

auth.SignOut();