अपने पुष्टि करने वाले सर्वर में बदलाव करके, Firebase से पुष्टि करने की सुविधा को कस्टम पुष्टि सिस्टम से इंटिग्रेट किया जा सकता है, ताकि उपयोगकर्ता के साइन इन करने के बाद आपको पसंद के मुताबिक साइन किए गए टोकन मिल सकें. आपके ऐप्लिकेशन को यह टोकन मिलता है. साथ ही, इसका इस्तेमाल Firebase से पुष्टि करने के लिए किया जाता है.
शुरू करने से पहले
- अगर आपने अभी तक अपना ऐप्लिकेशन रजिस्टर नहीं किया है, तो Firebase प्रोजेक्ट बनाएं और अपना ऐप्लिकेशन रजिस्टर करें.
-
Firebase डिपेंडेंसी इंस्टॉल और मैनेज करने के लिए, Swift पैकेज मैनेजर का इस्तेमाल करें.
- Xcode में, अपना ऐप्लिकेशन प्रोजेक्ट खोलने के लिए, फ़ाइल > पैकेज जोड़ें पर जाएं.
- जब कहा जाए, तब Firebase Apple प्लैटफ़ॉर्म SDK टूल का रिपॉज़िटरी जोड़ें:
- Firebase से पुष्टि करने की लाइब्रेरी चुनें.
- अपने टारगेट की बिल्ड सेटिंग के अन्य लिंकर फ़्लैग सेक्शन में
-ObjC
फ़्लैग जोड़ें. - यह काम पूरा होने के बाद, Xcode बैकग्राउंड में आपकी डिपेंडेंसी को अपने-आप रिज़ॉल्व और डाउनलोड करना शुरू कर देगा.
https://github.com/firebase/firebase-ios-sdk.git
- अपने प्रोजेक्ट की सर्वर कुंजियां पाएं:
- अपने प्रोजेक्ट की सेटिंग में, सेवा खाते पेज पर जाएं.
- सेवा खाते पेज के Firebase एडमिन SDK सेक्शन में सबसे नीचे, नई निजी कुंजी जनरेट करें पर क्लिक करें.
- नए सेवा खाते का सार्वजनिक/निजी कुंजी का जोड़ा, आपके कंप्यूटर पर अपने-आप सेव हो जाता है. इस फ़ाइल को अपने ऑथेंटिकेशन सर्वर पर कॉपी करें.
Firebase की मदद से पुष्टि करें
- अपने
UIApplicationDelegate
मेंFirebaseCore
मॉड्यूल को इंपोर्ट करें. साथ ही, ऐसे सभी Firebase मॉड्यूल को इंपोर्ट करें जिनका इस्तेमाल आपके ऐप्लिकेशन का ऐक्सेस मैनेज करता है. उदाहरण के लिए, Cloud Firestore और पुष्टि करने की सुविधा का इस्तेमाल करने के लिए:स्विफ़्टयूआई
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- अपने ऐप्लिकेशन का ऐक्सेस देने वाले व्यक्ति के
application(_:didFinishLaunchingWithOptions:)
तरीके में,FirebaseApp
शेयर किए गए इंस्टेंस को कॉन्फ़िगर करें:स्विफ़्टयूआई
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- अगर SwiftUI का इस्तेमाल किया जा रहा है, तो आपको ऐप्लिकेशन का ऐक्सेस देना होगा और उसे
UIApplicationDelegateAdaptor
याNSApplicationDelegateAdaptor
की मदद से अपनेApp
स्ट्रक्चर में अटैच करना होगा. आपको ऐप्लिकेशन सौंपने की सुविधा को स्वाइप करने की सुविधा भी बंद करनी होगी. ज़्यादा जानकारी के लिए, SwiftUI के निर्देश देखें.स्विफ़्टयूआई
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
- जब उपयोगकर्ता आपके ऐप्लिकेशन में साइन इन करते हैं, तो पुष्टि करने वाले सर्वर पर अपने साइन-इन क्रेडेंशियल (उदाहरण के लिए, उनका उपयोगकर्ता नाम और पासवर्ड) भेजें. आपका सर्वर, क्रेडेंशियल की जांच करता है और उनके मान्य होने पर कस्टम टोकन दिखाता है.
- अपने ऑथेंटिकेशन सर्वर से कस्टम टोकन मिलने के बाद, उपयोगकर्ता के साइन इन करने के लिए इसे
signInWithCustomToken
को पास करें:Swift
Auth.auth().signIn(withCustomToken: customToken ?? "") { user, error in // ... }
Objective-C
[[FIRAuth auth] signInWithCustomToken:customToken completion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) { // ... }];
अगले चरण
जब कोई उपयोगकर्ता पहली बार साइन इन करता है, तो एक नया उपयोगकर्ता खाता बनाया जाता है और उपयोगकर्ता के क्रेडेंशियल से लिंक किया जाता है. इन क्रेडेंशियल में उपयोगकर्ता नाम और पासवर्ड, फ़ोन नंबर या पुष्टि करने वाली सेवा की जानकारी शामिल है. यह नया खाता आपके Firebase प्रोजेक्ट के हिस्से के तौर पर सेव किया जाता है. साथ ही, इसका इस्तेमाल आपके प्रोजेक्ट के हर ऐप्लिकेशन में किसी उपयोगकर्ता की पहचान करने के लिए किया जा सकता है. भले ही, उपयोगकर्ता ने किसी भी तरह से साइन इन किया हो.
-
अपने ऐप्लिकेशन में,
User
ऑब्जेक्ट से उपयोगकर्ता की प्रोफ़ाइल की बुनियादी जानकारी ली जा सकती है. उपयोगकर्ताओं को मैनेज करना देखें. अपने Firebase रीयल टाइम डेटाबेस और Cloud Storage के सुरक्षा नियमों में,
auth
वैरिएबल से साइन-इन किए हुए उपयोगकर्ता का यूनीक यूज़र आईडी पाया जा सकता है और उसका इस्तेमाल करके यह कंट्रोल किया जा सकता है कि उपयोगकर्ता कौनसा डेटा ऐक्सेस कर सकता है.
आप पुष्टि करने वाली सेवा देने वाली कंपनियों के क्रेडेंशियल को किसी मौजूदा उपयोगकर्ता खाते से लिंक करके, उपयोगकर्ताओं को अपने ऐप्लिकेशन में साइन इन करने की अनुमति दे सकते हैं.
किसी उपयोगकर्ता को साइन आउट करने के लिए,
signOut:
पर कॉल करें.
Swift
let firebaseAuth = Auth.auth() do { try firebaseAuth.signOut() } catch let signOutError as NSError { print("Error signing out: %@", signOutError) }
Objective-C
NSError *signOutError; BOOL status = [[FIRAuth auth] signOut:&signOutError]; if (!status) { NSLog(@"Error signing out: %@", signOutError); return; }
पुष्टि करने से जुड़ी सभी गड़बड़ियों के लिए, गड़बड़ी को मैनेज करने वाला कोड भी जोड़ा जा सकता है. गड़बड़ियां ठीक करना देखें.