Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

قم بالمصادقة باستخدام Firebase باستخدام الحسابات المستندة إلى كلمة المرور على iOS

يمكنك استخدام مصادقة Firebase للسماح لمستخدميك بالمصادقة مع Firebase باستخدام عناوين البريد الإلكتروني وكلمات المرور الخاصة بهم ، ولإدارة الحسابات المستندة إلى كلمة مرور التطبيق.

قبل ان تبدأ

  1. أضف Firebase إلى مشروع iOS الخاص بك . قم بتضمين Podfile التالية في Podfile :
    pod 'Firebase/Auth'
    
  2. إذا لم تكن قد ربطت تطبيقك بمشروع Firebase حتى الآن ، فافعل ذلك من وحدة تحكم Firebase .
  3. تفعيل تسجيل الدخول إلى البريد الإلكتروني / كلمة المرور:
    1. في وحدة تحكم Firebase ، افتح قسم المصادقة .
    2. في علامة التبويب طريقة تسجيل الدخول ، قم بتمكين طريقة تسجيل الدخول إلى البريد الإلكتروني / كلمة المرور وانقر فوق حفظ .

قم بإنشاء حساب مستند إلى كلمة المرور

لإنشاء حساب مستخدم جديد بكلمة مرور ، أكمل الخطوات التالية في نشاط تسجيل الدخول لتطبيقك:

  1. استيراد وحدة Firebase في UIApplicationDelegate :

    سويفت

    import Firebase

    ج موضوعية

    @import Firebase;
  2. هيئ مثيل FirebaseApp مشتركًا ، عادةً في تطبيق تطبيقك application:didFinishLaunchingWithOptions: method:

    سويفت

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    ج موضوعية

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. عندما يقوم مستخدم جديد بالتسجيل باستخدام نموذج الاشتراك في التطبيق الخاص بك ، أكمل أي خطوات جديدة للتحقق من صحة الحساب يتطلبها تطبيقك ، مثل التحقق من أن كلمة مرور الحساب الجديد تمت كتابتها بشكل صحيح وتفي بمتطلبات التعقيد الخاصة بك.
  4. أنشئ حسابًا جديدًا عن طريق تمرير عنوان البريد الإلكتروني وكلمة المرور للمستخدم الجديد createUserWithEmail:email:password:completion:

    سويفت

    Auth.auth().createUser(withEmail: email, password: password) { authResult, error in
      // ...
    }

    ج موضوعية

    DC69019d46
    إذا تم إنشاء الحساب الجديد بنجاح ، فسيتم تسجيل دخول المستخدم ، ويمكنك الحصول على بيانات حساب المستخدم من كائن النتيجة الذي تم تمريره إلى طريقة رد الاتصال.

سجّل دخول مستخدم بعنوان بريد إلكتروني وكلمة مرور

تشبه خطوات تسجيل دخول مستخدم بكلمة مرور خطوات إنشاء حساب جديد. في نشاط تسجيل الدخول لتطبيقك ، قم بما يلي:

  1. استيراد وحدة Firebase في UIApplicationDelegate :

    سويفت

    import Firebase

    ج موضوعية

    @import Firebase;
  2. هيئ مثيل FirebaseApp مشتركًا ، عادةً في تطبيق تطبيقك application:didFinishLaunchingWithOptions: method:

    سويفت

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    ج موضوعية

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. عندما يقوم المستخدم signInWithEmail:email:password:completion: الدخول إلى التطبيق الخاص بك ، قم بتمرير عنوان البريد الإلكتروني وكلمة المرور signInWithEmail:email:password:completion: لتسجيل 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) {
      // ...
    }];
    إذا نجح المستخدم في تسجيل الدخول ، يمكنك الحصول على بيانات حساب المستخدم من كائن النتيجة الذي تم تمريره إلى طريقة رد الاتصال.

الخطوات التالية

بعد تسجيل دخول المستخدم لأول مرة ، يتم إنشاء حساب مستخدم جديد وربطه ببيانات الاعتماد - أي اسم المستخدم وكلمة المرور أو رقم الهاتف أو معلومات موفر المصادقة - المستخدم الذي قام بتسجيل الدخول باستخدام. يتم تخزين هذا الحساب الجديد كجزء من مشروع Firebase الخاص بك ، ويمكن استخدامه لتحديد هوية مستخدم عبر كل تطبيق في مشروعك ، بغض النظر عن كيفية تسجيل المستخدم للدخول.

  • في تطبيقاتك ، يمكنك الحصول على معلومات ملف تعريف المستخدم الأساسية من كائن FIRUser . انظر إدارة المستخدمين .

  • في قاعدة بيانات Firebase Realtime وقواعد أمان التخزين السحابي ، يمكنك الحصول على معرف المستخدم الفريد للمستخدم الذي قام بتسجيل الدخول من متغير 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;
}

قد ترغب أيضًا في إضافة رمز معالجة الأخطاء للنطاق الكامل من أخطاء المصادقة. راجع معالجة الأخطاء .