GitHub और Unity का उपयोग करके प्रमाणित करें

आप अपने ऐप में गिटहब प्रमाणीकरण को एकीकृत करके अपने उपयोगकर्ताओं को उनके गिटहब खातों का उपयोग करके फायरबेस के साथ प्रमाणित करने दे सकते हैं।

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

इससे पहले कि आप उपयोग कर सकते हैं Firebase प्रमाणीकरण , आप की जरूरत है:

  • अपना एकता प्रोजेक्ट पंजीकृत करें और इसे फायरबेस का उपयोग करने के लिए कॉन्फ़िगर करें।

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

    • यदि आप एक एकता परियोजना की जरूरत नहीं है, तो आप एक डाउनलोड कर सकते हैं नमूना एप्लिकेशन

  • जोड़े में Firebase एकता एसडीके (विशेष रूप से, FirebaseAuth.unitypackage ) अपने एकता परियोजना के लिए।

ध्यान रखें कि आपके एकता परियोजना के लिए Firebase जोड़ने दोनों में कार्य शामिल है Firebase सांत्वना और अपने खुले एकता परियोजना में (उदाहरण के लिए, आप Firebase config फ़ाइलों कंसोल से डाउनलोड, फिर उन्हें अपने एकता परियोजना में ले जाते हैं)।

एक्सेस करें Firebase.Auth वर्ग

FirebaseAuth वर्ग सभी API कॉल के लिए प्रवेश द्वार है। यह के माध्यम से सुलभ है FirebaseAuth.DefaultInstance
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;

फायरबेस के साथ प्रमाणित करें

  1. के लिए निर्देशों का पालन करें एंड्रॉयड और आईओएस , जिसमें प्रवेश किया GitHub उपयोगकर्ता के लिए एक टोकन प्राप्त करने के।
  2. किसी उपयोगकर्ता को सफलतापूर्वक में संकेत, का उपयोग एक Firebase क्रेडेंशियल के लिए टोकन और Firebase Firebase क्रेडेंशियल का उपयोग कर के साथ प्रमाणित का आदान-प्रदान:
    Firebase.Auth.Credential credential =
        Firebase.Auth.GitHubAuthProvider.GetCredential(accessToken);
    auth.SignInWithCredentialAsync(credential).ContinueWith(task => {
      if (task.IsCanceled) {
        Debug.LogError("SignInWithCredentialAsync was canceled.");
        return;
      }
      if (task.IsFaulted) {
        Debug.LogError("SignInWithCredentialAsync encountered an error: " + task.Exception);
        return;
      }
    
      Firebase.Auth.FirebaseUser newUser = task.Result;
      Debug.LogFormat("User signed in successfully: {0} ({1})",
          newUser.DisplayName, newUser.UserId);
    });
    

अगला कदम

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

  • आपकी ऐप्लिकेशन में, आप से उपयोगकर्ता की मूलभूत जानकारी प्राप्त कर सकते हैं 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 रीयलटाइम डेटाबेस और मेघ संग्रहण में सुरक्षा नियम , आप प्राप्त कर सकते हैं, जिसमें प्रवेश किया से उपयोगकर्ता की अद्वितीय उपयोगकर्ता ID auth चर, और इसका इस्तेमाल करते हैं क्या डेटा user एक्सेस कर सकते हैं नियंत्रित करने के लिए।

आप उपयोगकर्ताओं द्वारा एकाधिक प्रमाणीकरण प्रदाताओं का उपयोग कर अपने ऐप्लिकेशन में प्रवेश करने के लिए अनुमति दे सकते हैं किसी मौजूदा उपयोगकर्ता खाते के लिए प्रमाणन प्रदाता साख को जोड़ने।

एक उपयोगकर्ता प्रस्थान करने के लिए फोन SignOut() :

auth.SignOut();