यूनिटी का उपयोग करके गुमनाम रूप से फायरबेस के साथ प्रमाणित करें

आप फ़ायरबेस के साथ प्रमाणित करने के लिए अस्थायी अनाम खाते बनाने और उनका उपयोग करने के लिए फ़ायरबेस प्रमाणीकरण का उपयोग कर सकते हैं। इन अस्थायी अनाम खातों का उपयोग उन उपयोगकर्ताओं को सुरक्षा नियमों द्वारा संरक्षित डेटा के साथ काम करने की अनुमति देने के लिए किया जा सकता है जिन्होंने अभी तक आपके ऐप पर साइन अप नहीं किया है। यदि कोई अनाम उपयोगकर्ता आपके ऐप पर साइन अप करने का निर्णय लेता है, तो आप उनके साइन-इन क्रेडेंशियल को अनाम खाते से लिंक कर सकते हैं ताकि वे भविष्य के सत्रों में अपने संरक्षित डेटा के साथ काम करना जारी रख सकें।

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

  1. इससे पहले कि आप फायरबेस प्रमाणीकरण का उपयोग कर सकें, आपको अपने यूनिटी प्रोजेक्ट में फायरबेस यूनिटी एसडीके (विशेष रूप से, FirebaseAuth.unitypackage ) जोड़ना होगा।

    अपने यूनिटी प्रोजेक्ट में फायरबेस जोड़ें में इन प्रारंभिक सेटअप चरणों के लिए विस्तृत निर्देश प्राप्त करें।

  2. यदि आपने अभी तक अपने ऐप को अपने फायरबेस प्रोजेक्ट से कनेक्ट नहीं किया है, तो फायरबेस कंसोल से ऐसा करें।
  3. अनाम प्रमाणीकरण सक्षम करें:
    1. फायरबेस कंसोल में, ऑथ सेक्शन खोलें।
    2. साइन-इन विधियाँ पृष्ठ पर, अनाम साइन-इन विधि सक्षम करें।
    3. वैकल्पिक : यदि आपने अपने प्रोजेक्ट को आइडेंटिटी प्लेटफ़ॉर्म के साथ फायरबेस प्रमाणीकरण में अपग्रेड किया है, तो आप स्वचालित क्लीन-अप सक्षम कर सकते हैं। जब आप इस सेटिंग को सक्षम करते हैं, तो 30 दिनों से अधिक पुराने गुमनाम खाते स्वचालित रूप से हटा दिए जाएंगे। स्वचालित क्लीन-अप सक्षम वाली परियोजनाओं में, अनाम प्रमाणीकरण को अब उपयोग सीमा या बिलिंग कोटा में नहीं गिना जाएगा। स्वचालित सफ़ाई देखें.

गुमनाम रूप से फायरबेस से प्रमाणित करें

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

FirebaseAuth क्लास सभी API कॉल के लिए प्रवेश द्वार है। इसे FirebaseAuth.DefaultInstance के माध्यम से एक्सेस किया जा सकता है।
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
1. Firebase.Auth.FirebaseAuth.SignInAnonymouslyAsync पर कॉल करें।
auth.SignInAnonymouslyAsync().ContinueWith(task => {
  if (task.IsCanceled) {
    Debug.LogError("SignInAnonymouslyAsync was canceled.");
    return;
  }
  if (task.IsFaulted) {
    Debug.LogError("SignInAnonymouslyAsync 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);
});

किसी अज्ञात खाते को स्थायी खाते में बदलें

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

  1. जब उपयोगकर्ता साइन अप करता है, तो उपयोगकर्ता के प्रमाणीकरण प्रदाता के लिए साइन-इन प्रवाह पूरा करें, लेकिन इसमें Firebase.Auth.FirebaseAuth.SignInAndRetrieveDataWithCredentialAsync विधियों में से किसी एक को कॉल करना शामिल नहीं है। उदाहरण के लिए, उपयोगकर्ता का Google ID टोकन, Facebook एक्सेस टोकन, या ईमेल पता और पासवर्ड प्राप्त करें।
  2. नए प्रमाणीकरण प्रदाता के लिए Firebase.Auth.Credential प्राप्त करें:

  3. Firebase.Auth.Credential ऑब्जेक्ट को साइन-इन उपयोगकर्ता की LinkWithCredentialAsync विधि में पास करें:

यदि LinkWithCredentialAsync पर कॉल सफल होती है, तो उपयोगकर्ता का नया खाता अनाम खाते के फायरबेस डेटा तक पहुंच सकता है।

स्वचालित सफ़ाई

यदि आपने अपने प्रोजेक्ट को आइडेंटिटी प्लेटफ़ॉर्म के साथ फ़ायरबेस प्रमाणीकरण में अपग्रेड किया है, तो आप फ़ायरबेस कंसोल में स्वचालित क्लीन-अप सक्षम कर सकते हैं। जब आप इस सुविधा को सक्षम करते हैं तो आप फायरबेस को 30 दिनों से अधिक पुराने गुमनाम खातों को स्वचालित रूप से हटाने की अनुमति देते हैं। स्वचालित सफ़ाई सक्षम परियोजनाओं में, अनाम प्रमाणीकरण को उपयोग सीमा या बिलिंग कोटा में नहीं गिना जाएगा।

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

यदि आप यह देखना चाहते हैं कि इस सुविधा को सक्षम करने से पहले कितने उपयोगकर्ता प्रभावित होंगे, और आपने अपने प्रोजेक्ट को पहचान प्लेटफ़ॉर्म के साथ फायरबेस प्रमाणीकरण में अपग्रेड कर लिया है, तो आप क्लाउड लॉगिंग में is_anon द्वारा फ़िल्टर कर सकते हैं।

अगले कदम

अब जब उपयोगकर्ता फ़ायरबेस से प्रमाणित कर सकते हैं, तो आप फ़ायरबेस नियमों का उपयोग करके अपने फ़ायरबेस डेटाबेस में डेटा तक उनकी पहुंच को नियंत्रित कर सकते हैं।