يمكنك دمج مصادقة Firebase مع نظام مصادقة مخصّص من خلال تعديل خادم المصادقة لإنشاء رموز مميّزة مخصّصة وموقّعة عند تسجيل دخول المستخدم بنجاح. يتلقّى تطبيقك هذا الرمز المميز ويستخدمه للمصادقة مع Firebase.
قبل البدء
- إذا لم يسبق لك ذلك، اتّبِع الخطوات الواردة في دليل البدء.
- تثبيت مدير SDK في Firebase وضبطه احرص على تهيئة حزمة تطوير البرامج (SDK) باستخدام بيانات الاعتماد الصحيحة لمشروع Firebase.
المصادقة باستخدام Firebase
عندما يسجّل المستخدمون الدخول إلى تطبيقك، أرسِل بيانات اعتماد تسجيل الدخول (مثل اسم المستخدم وكلمة المرور) إلى خادم المصادقة. يتحقّق الخادم من بيانات الاعتماد، وإذا كانت صالحة، ينشئ رمزًا مميزًا مخصّصًا في Firebase ويرسله إلى تطبيقك.
بعد تلقّي الرمز المميّز المخصّص من خادم المصادقة، مرِّره إلى
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."); } }
الخطوات التالية
بعد أن ينشئ المستخدم حسابًا جديدًا، يتم تخزين هذا الحساب كجزء من مشروعك على Firebase، ويمكن استخدامه لتحديد هوية المستخدم في كل تطبيق ضمن مشروعك، بغض النظر عن طريقة تسجيل الدخول التي استخدمها.
في تطبيقاتك، يمكنك الحصول على معلومات الملف الشخصي الأساسية للمستخدم من عنصر
User. راجِع مقالة إدارة المستخدمين.
في "قواعد الأمان" في قاعدة بيانات Firebase في الوقت الفعلي وCloud Storage، يمكنك الحصول على معرّف المستخدم الفريد للمستخدم الذي سجّل الدخول من المتغيّر auth، واستخدامه للتحكّم في البيانات التي يمكن للمستخدم الوصول إليها.
يمكنك السماح للمستخدمين بتسجيل الدخول إلى تطبيقك باستخدام العديد من مقدّمي خدمات المصادقة من خلال ربط بيانات اعتماد مقدّم خدمة المصادقة بحساب مستخدم حالي.
لتسجيل خروج مستخدم، اتّبِع الخطوات التالية:signOut()
await FirebaseAuth.instance.signOut();