कुछ समय के लिए पहचान छिपाने वाले खाते बनाने और उनका इस्तेमाल करने के लिए, Firebase से पुष्टि करने की सुविधा का इस्तेमाल किया जा सकता है का इस्तेमाल करें. इन कुछ समय तक पहचान छिपाने वाले खातों का इस्तेमाल, इन कामों के लिए किया जा सकता है इससे उन उपयोगकर्ताओं को डेटा की सुरक्षा करने की सुविधा मिलेगी जिन्होंने अब तक आपके ऐप्लिकेशन में साइन अप नहीं किया है सुरक्षा नियमों के मुताबिक काम करता है. अगर कोई उपयोगकर्ता पहचान छिपाने वाला है और आपके ऐप्लिकेशन में साइन अप करना चाहता है, तो ये काम किए जा सकते हैं अपने साइन-इन क्रेडेंशियल को पहचान छिपाने वाले खाते से लिंक कर सकते हैं, कि वे आने वाले सेशन में अपने सुरक्षित डेटा का इस्तेमाल जारी रख सकें.
शुरू करने से पहले
अगर आपने पहले से ऐसा नहीं किया है, तो शुरू करें गाइड में दिए गए निर्देशों का पालन करें.
पहचान छिपाकर साइन इन करने की सुविधा चालू करें:
- Firebase कंसोल के पुष्टि करें सेक्शन में, साइन इन करने का तरीका करें.
- साइन इन करने का तरीका पेज से, पहचान छिपाकर साइन इन करने की सुविधा को चालू करें तरीका और सेव करें पर क्लिक करें.
पहचान छिपाकर Firebase की मदद से पुष्टि करें
जब कोई साइन-आउट किया हुआ उपयोगकर्ता किसी ऐसी ऐप्लिकेशन सुविधा का इस्तेमाल करता है जिसके लिए पुष्टि करना ज़रूरी है
Firebase, signInAnonymously()
को कॉल करके उपयोगकर्ता की पहचान छिपाकर, साइन इन करें:
try {
final userCredential =
await FirebaseAuth.instance.signInAnonymously();
print("Signed in with temporary account.");
} on FirebaseAuthException catch (e) {
switch (e.code) {
case "operation-not-allowed":
print("Anonymous auth hasn't been enabled for this project.");
break;
default:
print("Unknown error.");
}
}
पहचान छिपाने वाले खाते को स्थायी खाते में बदलना
जब कोई ऐसा उपयोगकर्ता आपके ऐप्लिकेशन में साइन अप करता है जिसकी पहचान नहीं की जाती, तो हो सकता है कि आप उसे अनुमति देना चाहें नए खाते के साथ अपना काम जारी रख सकते हैं—उदाहरण के लिए, साइन अप करने से पहले उपयोगकर्ता के शॉपिंग कार्ट में जोड़े गए आइटम उपलब्ध कराता हो अपने नए खाते के शॉपिंग कार्ट में स्टोर कर सकते हैं. ऐसा करने के लिए, नीचे दिए गए काम करें चरण:
जब उपयोगकर्ता साइन अप करता है, तो उपयोगकर्ता के साइन-इन फ़्लो को पूरा करें करता है. हालांकि, इसमें से किसी एक
signInWith
- तरीके. उदाहरण के लिए, उपयोगकर्ता का Google आईडी टोकन पाएं, Facebook ऐक्सेस टोकन या ईमेल पता और पासवर्ड.पुष्टि करने वाली नई कंपनी के लिए,
Credential
ऑब्जेक्ट पाएं:// Google Sign-in final credential = GoogleAuthProvider.credential(idToken: idToken); // Email and password sign-in final credential = EmailAuthProvider.credential(email: emailAddress, password: password); // Etc.
साइन इन करने वाले उपयोगकर्ता के
linkWithCredential()
कोCredential
ऑब्जेक्ट भेजें तरीका:try { final userCredential = await FirebaseAuth.instance.currentUser ?.linkWithCredential(credential); } on FirebaseAuthException catch (e) { switch (e.code) { case "provider-already-linked": print("The provider has already been linked to the user."); break; case "invalid-credential": print("The provider's credential is not valid."); break; case "credential-already-in-use": print("The account corresponding to the credential already exists, " "or is already linked to a Firebase User."); break; // See the API reference for the full list of error codes. default: print("Unknown error."); } ```
अगर linkWithCredential()
को कॉल किया जाता है, तो उपयोगकर्ता का नया खाता ये काम कर सकता है:
उस खाते का Firebase डेटा ऐक्सेस करें.
अगले चरण
जब कोई उपयोगकर्ता नया खाता बना लेता है, तो इस खाते को आपके Firebase प्रोजेक्ट बनाया जा सकता है. इसकी मदद से, आपके ऐप्लिकेशन में मौजूद हर ऐप्लिकेशन पर उपयोगकर्ता की पहचान की जा सकती है प्रोजेक्ट के लिए बनाया गया है, चाहे उपयोगकर्ता ने साइन-इन करने के लिए किस तरीके का इस्तेमाल किया हो.
अपने ऐप्लिकेशन में, उपयोगकर्ता की बुनियादी प्रोफ़ाइल जानकारी को
User
ऑब्जेक्ट. उपयोगकर्ताओं को मैनेज करना देखें.
अपने Firebase रीयल टाइम डेटाबेस और Cloud Storage के सुरक्षा नियमों में, ये काम किए जा सकते हैं
auth
वैरिएबल से साइन-इन किए हुए उपयोगकर्ता का यूनीक यूज़र आईडी पाएं. इसके बाद, इसका इस्तेमाल इन कामों के लिए करें
तय करें कि उपयोगकर्ता कौनसा डेटा ऐक्सेस कर सकता है.
उपयोगकर्ताओं को, पुष्टि करने के एक से ज़्यादा तरीके का इस्तेमाल करके, अपने ऐप्लिकेशन में साइन इन करने की अनुमति दी जा सकती है पुष्टि करने वाले के क्रेडेंशियल जोड़कर) सेवा देने वाली कंपनियों के साथ मौजूदा उपयोगकर्ता खाते में साइन इन करें.
किसी उपयोगकर्ता को साइन आउट करने के लिए, signOut()
पर कॉल करें:
await FirebaseAuth.instance.signOut();