المصادقة مع Firebase باستخدام نظام مصادقة مخصص

يمكنك دمج مصادقة Firebase مع نظام مصادقة مخصص من خلال تعديل خادم المصادقة لإنتاج رموز مميّزة موقَّعة ومخصّصة عندما يختار المستخدم بنجاح. يتلقّى تطبيقك هذا الرمز المميّز ويستخدمه للمصادقة. من خلال Firebase.

قبل البدء

  1. يُرجى اتّباع الخطوات الواردة في دليل البدء، إذا لم يسبق لك فعل ذلك.
  2. ثبِّت حزمة تطوير البرامج (SDK) لمشرف Firebase واضبطها. تأكّد من إعداد حزمة تطوير البرامج (SDK). ببيانات الاعتماد الصحيحة لمشروعك على Firebase.

المصادقة باستخدام Firebase

  1. عندما يسجّل المستخدمون الدخول إلى تطبيقك، أرسِل بيانات اعتماد تسجيل الدخول (ل على سبيل المثال، اسم المستخدم وكلمة المرور) إلى خادم المصادقة. فحص الخادم لبيانات الاعتماد، وإذا كانت صالحة، إنشاء رمز مميَّز مخصّص لمنصّة Firebase ويُرسل الرمز المميّز إلى تطبيقك مرة أخرى.

  2. بعد استلام الرمز المميّز المخصّص من خادم المصادقة، مرِّره إلى signInWithCustomToken() لتسجيل دخول المستخدم:

    try {
        final userCredential =
            await FirebaseAuth.instance.signInWithCustomToken(token);
        print("Sign-in successful.");
    } on FirebaseAuthException catch (e) {
        switch (e.code) {
            case "invalid-custom-token":
                print("The supplied token is not a Firebase custom auth token.");
                break;
            case "custom-token-mismatch":
                print("The supplied token is for a different Firebase project.");
                break;
            default:
                print("Unknown error.");
        }
    }
    

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

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

في تطبيقاتك، يمكنك الحصول على معلومات الملف الشخصي الأساسية للمستخدم من عنصر User. راجع إدارة المستخدمين.

في "قاعدة بيانات Firebase في الوقت الفعلي" و"قواعد أمان Cloud Storage"، يمكنك الحصول على رقم تعريف المستخدِم الفريد الخاص بالمستخدم الذي سجّل الدخول من المتغيّر auth واستخدامه من أجل للتحكم في البيانات التي يمكن للمستخدم الوصول إليها.

يمكنك السماح للمستخدمين بتسجيل الدخول إلى تطبيقك باستخدام طرق مصادقة متعددة. موفِّري خدمة المصادقة من خلال ربط بيانات اعتماد موفِّر المصادقة) حساب مستخدم حالي.

لتسجيل خروج مستخدم، يُرجى الاتصال بالرقم signOut():

await FirebaseAuth.instance.signOut();