आप अपने उपयोगकर्ताओं को उनके ईमेल पते और पासवर्ड का उपयोग करके Firebase के साथ प्रमाणित करने और अपने ऐप के पासवर्ड-आधारित खातों को प्रबंधित करने के लिए Firebase प्रमाणीकरण का उपयोग कर सकते हैं।
शुरू करने से पहले
फायरबेस निर्भरता को स्थापित और प्रबंधित करने के लिए स्विफ्ट पैकेज मैनेजर का उपयोग करें।
- Xcode में, आपका ऐप प्रोजेक्ट खुला होने के साथ, File > Add Packages पर नेविगेट करें।
- संकेत मिलने पर, Firebase Apple प्लेटफॉर्म्स SDK रिपॉजिटरी जोड़ें:
- फायरबेस प्रमाणीकरण पुस्तकालय चुनें।
- समाप्त होने पर, Xcode स्वचालित रूप से पृष्ठभूमि में आपकी निर्भरता को हल करना और डाउनलोड करना शुरू कर देगा।
https://github.com/firebase/firebase-ios-sdk
अगला, कुछ कॉन्फ़िगरेशन चरण करें:
- अगर आपने अभी तक अपने ऐप को अपने Firebase प्रोजेक्ट से कनेक्ट नहीं किया है, तो इसे Firebase कंसोल से करें।
- ईमेल/पासवर्ड साइन-इन सक्षम करें:
- फायरबेस कंसोल में, प्रामाणिक अनुभाग खोलें।
- साइन इन विधि टैब पर, ईमेल/पासवर्ड साइन-इन विधि को सक्षम करें और सहेजें पर क्लिक करें।
पासवर्ड आधारित खाता बनाएं
पासवर्ड के साथ एक नया उपयोगकर्ता खाता बनाने के लिए, अपने ऐप की साइन-इन गतिविधि में निम्नलिखित चरणों को पूरा करें:
- अपने
UIApplicationDelegate
मेंFirebaseCore
मॉड्यूल आयात करें, साथ ही आपके ऐप प्रतिनिधि द्वारा उपयोग किए जाने वाले किसी भी अन्य Firebase मॉड्यूल को आयात करें। उदाहरण के लिए, क्लाउड फायरस्टोर और प्रमाणीकरण का उपयोग करने के लिए:तीव्र
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
उद्देश्य सी
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
-
FirebaseApp
साझा इंस्टेंस कॉन्फ़िगर करें, आमतौर पर आपकेApp
के प्रारंभकर्ता या ऐप प्रतिनिधि केapplication(_:didFinishLaunchingWithOptions:)
विधि में:तीव्र
// Use Firebase library to configure APIs FirebaseApp.configure()
उद्देश्य सी
// Use Firebase library to configure APIs [FIRApp configure];
- जब कोई नया उपयोगकर्ता आपके ऐप के साइन-अप फ़ॉर्म का उपयोग करके साइन अप करता है, तो आपके ऐप के लिए आवश्यक कोई भी नया खाता सत्यापन चरण पूरा करें, जैसे यह सत्यापित करना कि नए खाते का पासवर्ड सही ढंग से टाइप किया गया था और आपकी जटिलता आवश्यकताओं को पूरा करता है।
- नए उपयोगकर्ता के ईमेल पते और पासवर्ड को
createUserWithEmail:email:password:completion:
पर भेजकर एक नया खाता बनाएं।यदि नया खाता सफलतापूर्वक बनाया गया था, तो उपयोगकर्ता साइन इन है, और आप परिणाम ऑब्जेक्ट से उपयोगकर्ता का खाता डेटा प्राप्त कर सकते हैं जो कॉलबैक विधि को पास किया गया है।तीव्र
Auth.auth().createUser(withEmail: email, password: password) { authResult, error in // ... }
उद्देश्य सी
[[FIRAuth auth] createUserWithEmail:email password:password completion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) { // ... }];
ईमेल पते और पासवर्ड से उपयोगकर्ता में साइन इन करें
पासवर्ड के साथ उपयोगकर्ता में साइन इन करने के चरण एक नया खाता बनाने के चरणों के समान हैं। अपने ऐप की साइन-इन गतिविधि में, निम्न कार्य करें:
- अपने
UIApplicationDelegate
मेंFirebaseCore
मॉड्यूल आयात करें, साथ ही आपके ऐप प्रतिनिधि द्वारा उपयोग किए जाने वाले किसी भी अन्य Firebase मॉड्यूल को आयात करें। उदाहरण के लिए, क्लाउड फायरस्टोर और प्रमाणीकरण का उपयोग करने के लिए:तीव्र
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
उद्देश्य सी
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
-
FirebaseApp
साझा इंस्टेंस कॉन्फ़िगर करें, आमतौर पर आपकेApp
के प्रारंभकर्ता या ऐप प्रतिनिधि केapplication(_:didFinishLaunchingWithOptions:)
विधि में:तीव्र
// Use Firebase library to configure APIs FirebaseApp.configure()
उद्देश्य सी
// Use Firebase library to configure APIs [FIRApp configure];
- जब कोई उपयोगकर्ता आपके ऐप में साइन इन करता है, तो उपयोगकर्ता का ईमेल पता और पासवर्ड
signInWithEmail:email:password:completion:
पर पास करें।यदि उपयोगकर्ता सफलतापूर्वक साइन इन करता है, तो आप उस परिणाम ऑब्जेक्ट से उपयोगकर्ता का खाता डेटा प्राप्त कर सकते हैं जो कॉलबैक विधि को पास किया गया है।तीव्र
Auth.auth().signIn(withEmail: email, password: password) { [weak self] authResult, error in guard let strongSelf = self else { return } // ... }
उद्देश्य सी
[[FIRAuth auth] signInWithEmail:self->_emailField.text password:self->_passwordField.text completion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) { // ... }];
अगले कदम
उपयोगकर्ता द्वारा पहली बार साइन इन करने के बाद, एक नया उपयोगकर्ता खाता बनाया जाता है और क्रेडेंशियल से लिंक किया जाता है—अर्थात, उपयोगकर्ता नाम और पासवर्ड, फ़ोन नंबर, या प्रमाणीकरण प्रदाता जानकारी—जिससे उपयोगकर्ता ने साइन इन किया है। यह नया खाता आपके फ़ायरबेस प्रोजेक्ट के हिस्से के रूप में संग्रहीत किया जाता है, और इसका उपयोग आपके प्रोजेक्ट में प्रत्येक ऐप में उपयोगकर्ता की पहचान करने के लिए किया जा सकता है, भले ही उपयोगकर्ता कैसे साइन इन करे।
अपने ऐप्स में, आप
FIRUser
ऑब्जेक्ट से उपयोगकर्ता की मूल प्रोफ़ाइल जानकारी प्राप्त कर सकते हैं। उपयोगकर्ता प्रबंधित करें देखें।अपने फायरबेस रीयलटाइम डेटाबेस और क्लाउड स्टोरेज सुरक्षा नियमों में, आप
auth
चर से साइन-इन किए गए उपयोगकर्ता की अद्वितीय उपयोगकर्ता आईडी प्राप्त कर सकते हैं, और इसका उपयोग यह नियंत्रित करने के लिए कर सकते हैं कि उपयोगकर्ता किस डेटा तक पहुंच सकता है।
किसी उपयोगकर्ता को साइन आउट करने के लिए, signOut:
पर कॉल करें।
तीव्र
let firebaseAuth = Auth.auth() do { try firebaseAuth.signOut() } catch let signOutError as NSError { print("Error signing out: %@", signOutError) }
उद्देश्य सी
NSError *signOutError; BOOL status = [[FIRAuth auth] signOut:&signOutError]; if (!status) { NSLog(@"Error signing out: %@", signOutError); return; }
आप प्रमाणीकरण त्रुटियों की पूरी श्रृंखला के लिए त्रुटि प्रबंधन कोड भी जोड़ना चाह सकते हैं। हैंडल एरर देखें।