تم إصدار أحدث إصدار من Google Identity Toolkit باسم Firebase Authentication. من الآن فصاعدًا، سيتم إيقاف العمل على ميزات Identity Toolkit، وسيتم تطوير جميع الميزات الجديدة في Firebase Authentication. ننصح مطوّري Identity Toolkit بالانتقال إلى "مصادقة Firebase" في أقرب وقت ممكن، ولكن ستستمر Identity Toolkit في العمل ولن يتم إيقافها نهائيًا بدون إشعار آخر.
ميزات جديدة
تتضمّن خدمة "مصادقة Firebase" بعض التحسينات المهمة في الميزات مقارنةً بـ Google Identity Toolkit، وهي:
الوصول إلى جميع خدمات Firebase
Firebase هو نظام أساسي للجوّال يساعد على التطوير السريع للتطبيقات عالية الجودة وزيادة قاعدة المستخدمين وربح المزيد من الأموال. تتألف Firebase من ميزات تكميلية يمكنك دمجها ومطابقتها لتناسب احتياجاتك، وتشمل بنية أساسية من أجل: إحصاءات الأجهزة الجوّالة، المراسلة عبر السحابة الإلكترونية، قاعدة البيانات في الوقت الفعلي، تخزين الملفات، الاستضافة الثابتة، الإعداد عن بُعد، تقارير الأعطال على الأجهزة الجوّالة، والاختبار على Android.
واجهات المستخدم المعدَّلة
أعدنا تصميم مسارات واجهة المستخدم بالكامل استنادًا إلى أحدث أبحاث تجربة المستخدم التي أجرتها Google. ويشمل ذلك عمليات استرداد كلمة المرور وربط الحسابات وتحديد الحسابات الجديدة أو الحالية، وهي عمليات تستغرق وقتًا طويلاً في الترميز وتصحيح الأخطاء. تتضمّن هذه الخدمة ميزة Smart Lock لكلمات المرور على Android، التي أدّت إلى تحسين معدّل الإحالات الناجحة لعمليات تسجيل الدخول والاشتراك في التطبيقات المشارِكة بشكل كبير. يتيح هذا التطبيق أيضًا إجراء تعديلات سهلة على التصميم بما يتناسب مع تطبيقك، كما أنّ إصدارَي Android وiOS متاحان للمصدر المفتوح لتوفير أقصى قدر من التخصيص.
إعداد الخادم بشكلٍ مبسّط
لقد سهّلنا على المطوّرين استخدام خدمة "مصادقة Firebase". من خلال Identity Toolkit، لاحظنا أنّ العديد من المطوّرين اختاروا عدم تنفيذ مسار استرداد البريد الإلكتروني، ما جعل من المستحيل على المستخدمين استرداد حساباتهم في حال نسيان كلمة المرور. يمكن لخدمة Firebase Authentication إرسال رسائل تأكيد البريد الإلكتروني وإعادة ضبط كلمة المرور وتغيير كلمة المرور إلى المستخدم، ويمكن تخصيص النص بسهولة للمستخدمين. بالإضافة إلى ذلك، لن تحتاج بعد الآن إلى استضافة عناصر واجهة المستخدم لاستضافة عمليات إعادة التوجيه وإكمال عمليات تغيير كلمة المرور.
وحدة تحكّم المشرف الجديدة
تتضمّن Firebase وحدة تحكّم مطوّرين جديدة، ويتيح لك قسم "المصادقة" عرض المستخدمين وتعديلهم وحذفهم. يمكن أن يكون هذا مفيدًا جدًا في تصحيح أخطاء عمليات تسجيل الدخول والاشتراك. تتيح لك وحدة التحكّم أيضًا ضبط طرق المصادقة وتخصيص نماذج الرسائل الإلكترونية.
حِزم SDK الجديدة
تتوفّر الآن جميع واجهات برمجة التطبيقات الخاصة بالخادم في Identity Toolkit بشكل أصلي مع كل مكتبة من مكتباتنا (Android وiOS والويب). سيتمكّن المطوّرون من تسجيل دخول المستخدمين الحاليين والجدد وإنشاء حسابات لهم، والوصول إلى خصائص المستخدمين، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور، وغير ذلك بدون أن يكونوا مرتبطين بواجهة مستخدم ثابتة. يمكنك إنشاء تجربة وخطوات تسجيل دخول كاملة يدويًا باستخدام واجهة برمجة التطبيقات هذه إذا أردت ذلك.
إدارة الجلسات للتطبيقات المتوافقة مع الأجهزة الجوّالة
باستخدام Identity Toolkit، أنشأت التطبيقات حالة الجلسة الخاصة بها استنادًا إلى حدث المصادقة الأوّلي من Identity Toolkit. تستخدم خدمة Firebase Auth خدمة خلفية تأخذ رمزًا مميزًا لإعادة التحميل، تم إنشاؤه من حدث المصادقة، وتستبدله برموز مميزة للدخول صالحة لمدة ساعة واحدة على Android وiOS وJavaScript. عندما يغيّر المستخدم كلمة المرور، لن تتمكّن رموز إعادة التحميل من إنشاء رموز وصول جديدة، ما يؤدي إلى إيقاف إمكانية الوصول إلى أن يعيد المستخدم إثبات هويته على هذا الجهاز.
المصادقة المجهولة والمصادقة باستخدام GitHub
تتيح خدمة Firebase Authentication نوعَين جديدَين من المصادقة، هما GitHub والمصادقة بدون تحديد هوية. يمكن استخدام ميزة "تسجيل الدخول بدون تحديد الهوية" لإنشاء رقم تعريف فريد للمستخدم بدون أن يضطر إلى إجراء أي عملية تسجيل دخول أو اشتراك. باستخدام حساب مستخدم مجهول الهوية، يمكنك الآن إجراء طلبات بيانات من واجهة برمجة التطبيقات مصادَق عليها، كما تفعل مع حساب مستخدم عادي. عندما يقرّر المستخدم الاشتراك في حساب، يتم الاحتفاظ بجميع الأنشطة باستخدام رقم تعريف المستخدم نفسه. ويُعدّ هذا الخيار مناسبًا لحالات مثل سلّة التسوّق على الخادم أو أي تطبيق تريد فيه جذب المستخدم قبل إرساله خلال مسار التسجيل.
الاختلافات في الميزات
لا تتوفّر بعض ميزات Identity Toolkit حاليًا في Firebase Authentication، بينما تم إعادة تصميم ميزات أخرى وتعمل بشكل مختلف. يمكنك اختيار عدم نقل البيانات على الفور إذا كانت هذه الميزات مهمة لتطبيقك. وفي كثير من الحالات، قد لا تكون هذه الميزات مهمة لتطبيقك أو قد تتوفّر بدائل سهلة تتيح لك مواصلة عملية نقل البيانات.
الاختلافات من جهة الخادم
لم يتم إجراء سوى تحديثات بسيطة على خدمة Identity Toolkit الأساسية التي تتضمّن واجهات REST API الأساسية ومنطق التحقّق من صحة الحساب وقاعدة بيانات المستخدمين الأساسية. ومع ذلك، تغيّرت بعض الميزات وطريقة دمج خدمة Firebase Authentication في خدمتك.
موفّرو الهوية
لا تتوفّر خدمة Paypal وAOL. سيظل بإمكان المستخدمين الذين لديهم حسابات من موفّري خدمات تحديد الهوية هؤلاء تسجيل الدخول إلى تطبيقك باستخدام عملية استرداد كلمة المرور وإعداد كلمة مرور لحساباتهم.
مكتبات الخادم
تتوفّر حاليًا حِزم تطوير البرامج (SDK) للمشرفين في Firebase للغات Java وNode.js وPython وGo وC#.
الرسائل الإلكترونية لإدارة الحساب
يمكن إجراء عمليات إعادة ضبط كلمة المرور وإثبات ملكية عنوان البريد الإلكتروني وتغييره من خلال Firebase أو من خادم البريد الخاص بالمطوّر. في الوقت الحالي، لا تتيح نماذج البريد الإلكتروني في Firebase سوى تخصيص محدود.
تأكيد تغيير عنوان البريد الإلكتروني
في Identity Toolkit، عندما يقرّر المستخدم تغيير عنوان بريده الإلكتروني، يتم إرسال رسالة إلكترونية إلى العنوان الجديد تتضمّن رابطًا لمواصلة عملية تغيير عنوان البريد الإلكتروني.
تؤكّد Firebase تغيير عنوان البريد الإلكتروني من خلال إرسال رسالة إلكترونية لإبطال التغيير إلى عنوان البريد الإلكتروني القديم تتضمّن رابطًا للعودة إلى العنوان القديم.
طرح ميزة "التعرّف على المستند"
كانت Identity Toolkit تتيح إضافة موفّري الهوية إلى نظام تسجيل الدخول بشكل تدريجي، ما يتيح لك تجربة تأثير ذلك في طلبات الدعم. تمت إزالة هذه الميزة في خدمة "المصادقة عبر Firebase".
الاختلافات من جهة العميل
في Firebase، يتم تقسيم الميزات التي توفّرها Google Identity Toolkit إلى مكوّنَين:
حِزم تطوير البرامج (SDK) لخدمة "مصادقة Firebase"
في خدمة Firebase Authentication، تم تجميع الوظائف التي توفّرها واجهة برمجة التطبيقات REST الخاصة بأداة Identity Toolkit في حِزم SDK للعملاء المتاحة على Android وiOS وJavaScript. يمكنك استخدام حزمة SDK لتسجيل الدخول وتسجيل المستخدمين، والوصول إلى معلومات الملف الشخصي للمستخدم، وربط الحسابات وتعديلها وحذفها، وإعادة ضبط كلمات المرور باستخدام حزمة SDK الخاصة بالعميل بدلاً من التواصل مع خدمة الخلفية من خلال طلبات REST.
FirebaseUI Auth
تمت إعادة إنشاء جميع مسارات واجهة المستخدم التي تدير عمليات تسجيل الدخول والاشتراك واسترداد كلمة المرور وربط الحسابات باستخدام حِزم تطوير البرامج (SDK) الخاصة بخدمة Firebase Authentication. تتوفّر هذه الميزات كحِزم SDK مفتوحة المصدر لنظامَي التشغيل iOS وAndroid، ما يتيح لك تخصيص مسارات المستخدمين بالكامل بطرق لا يمكن تنفيذها باستخدام Identity Toolkit.
تشمل الاختلافات الإضافية ما يلي:
الجلسات ونقل البيانات
بما أنّ الجلسات تتم إدارتها بشكل مختلف في Identity Toolkit وFirebase Authentication، سيتم إنهاء الجلسات الحالية للمستخدمين عند ترقية حزمة تطوير البرامج (SDK)، وسيكون على المستخدمين تسجيل الدخول مرة أخرى.
قبل البدء
قبل أن تتمكّن من نقل البيانات من Identity Toolkit إلى Firebase Authentication، عليك
افتح وحدة تحكّم Firebase، وانقر على استيراد مشروع Google، ثم اختَر مشروع Identity Toolkit.
انقر على settings > الأذونات لفتح صفحة "إدارة الهوية وإمكانية الوصول والمشرف".
افتح حسابات الخدمة. يمكنك هنا الاطّلاع على حساب الخدمة الذي سبق لك إعداده في Identity Toolkit.
بجانب حساب الخدمة، انقر على more_vert > إنشاء مفتاح. بعد ذلك، في مربّع الحوار إنشاء مفتاح خاص، اضبط نوع المفتاح على JSON وانقر على إنشاء. سيتم تنزيل ملف JSON يحتوي على بيانات اعتماد حساب الخدمة. ستحتاج إلى ذلك لإعداد حزمة SDK في الخطوة التالية.
ارجع إلى وحدة تحكُّم Firebase. في قسم "المصادقة" (Auth)، افتح صفحة نماذج الرسائل الإلكترونية. في هذه الصفحة، يمكنك تخصيص نماذج الرسائل الإلكترونية لتطبيقك.
في Identity Toolkit، عندما يعيد المستخدمون ضبط كلمات المرور ويغيّرون عناوين البريد الإلكتروني ويؤكّدون عناوين بريدهم الإلكتروني، كان عليك الحصول على رمز OOB من خادم Identity Toolkit، ثم إرسال الرمز إلى المستخدمين عبر البريد الإلكتروني. يرسل Firebase رسائل إلكترونية استنادًا إلى النماذج التي تضبطها بدون الحاجة إلى اتّخاذ أي إجراءات إضافية.
اختياري: إذا كنت بحاجة إلى الوصول إلى خدمات Firebase على الخادم، ثبِّت حزمة تطوير البرامج (SDK) لمنصة Firebase.
يمكنك تثبيت وحدة Firebase Node.js باستخدام
npm
:$ npm init $ npm install --save firebase-admin
في الرمز البرمجي، يمكنك الوصول إلى Firebase باستخدام:
var admin = require('firebase-admin'); var app = admin.initializeApp({ credential: admin.credential.cert('path/to/serviceAccountCredentials.json') });
بعد ذلك، أكمل خطوات نقل البيانات الخاصة بنظام تشغيل تطبيقك: Android أو iOS أو الويب.
الخوادم وJavaScript
التغييرات البارزة
هناك عدد من الاختلافات الإضافية في تنفيذ Firebase على الويب مقارنةً بـ Identity Toolkit.
إدارة جلسات الويب
في السابق، عندما كان المستخدم يجري مصادقة باستخدام أداة Identity Toolkit، كان يتم ضبط ملف تعريف ارتباط للمستخدم يُستخدَم في بدء الجلسة. كانت مدة صلاحية ملف تعريف الارتباط هذا أسبوعين، وكان يُستخدَم للسماح للمستخدم باستخدام أداة إدارة الحساب لتغيير كلمة المرور وعنوان البريد الإلكتروني. استخدمت بعض المواقع الإلكترونية ملف تعريف الارتباط هذا لمصادقة جميع طلبات الصفحات الأخرى على الموقع الإلكتروني. استخدمت المواقع الإلكترونية الأخرى ملف تعريف الارتباط لإنشاء ملفات تعريف ارتباط خاصة بها من خلال نظام إدارة ملفات تعريف الارتباط في إطار عملها.
تتولّى حِزم تطوير البرامج (SDK) الخاصة بالعملاء في Firebase الآن إدارة رموز التعريف المميزة في Firebase وتعمل مع الخلفية في خدمة "المصادقة في Firebase" للحفاظ على استمرار الجلسة. تنتهي صلاحية الجلسات في الخلفية عند إجراء تغييرات مهمة على الحساب (مثل تغيير كلمة مرور المستخدم). لا يتم تلقائيًا ضبط رموز تعريف Firebase المميزة كملفات تعريف ارتباط على عميل الويب، كما أنّ مدة صلاحيتها ساعة واحدة فقط. ما لم تكن تريد جلسات لمدة ساعة واحدة فقط، لا يُنصح باستخدام رموز التعريف المميزة في Firebase كملف تعريف ارتباط للتحقّق من صحة جميع طلبات صفحاتك. بدلاً من ذلك، عليك إعداد أداة معالجة عند تسجيل دخول المستخدم، والحصول على الرمز المميز لتعريف الهوية على Firebase، والتحقّق من صحة الرمز المميز، وإنشاء ملف تعريف الارتباط الخاص بك من خلال نظام إدارة ملفات تعريف الارتباط في إطار العمل.
عليك ضبط مدة بقاء ملف تعريف الارتباط للجلسة استنادًا إلى احتياجات الأمان لتطبيقك.
مسار تسجيل الدخول على الويب
في السابق، كان يتم إعادة توجيه المستخدمين إلى
accountchooser.com
عند بدء عملية تسجيل الدخول لمعرفة المعرّف الذي يريد المستخدم استخدامه. يبدأ مسار واجهات مستخدم Firebase Auth الآن بقائمة تتضمّن طرق تسجيل الدخول، بما في ذلك خيار البريد الإلكتروني الذي يؤدي إلىaccountchooser.com
على الويب ويستخدم hintRequest API على Android. بالإضافة إلى ذلك، لم يعُد من الضروري تقديم عناوين البريد الإلكتروني في واجهة مستخدم Firebase. سيسهّل ذلك إتاحة استخدام التطبيق للمستخدمين المجهولين أو المستخدمين الذين يستخدمون نظام مصادقة مخصّصًا أو المستخدمين من مقدّمي الخدمات الذين لا يشترطون توفير عناوين بريد إلكتروني.تطبيق إدارة الحساب المصغّر
توفّر هذه الأداة واجهة مستخدم للمستخدمين لتغيير عناوين البريد الإلكتروني أو كلمات المرور أو إلغاء ربط حساباتهم بموفّري خدمات تحديد الهوية. وهي قيد التطوير حاليًا.
زر/تطبيق مصغّر لتسجيل الدخول
لم يعُد يتم توفير أدوات مثل زر تسجيل الدخول وبطاقة المستخدم. ويمكن إنشاؤها بسهولة بالغة باستخدام واجهة برمجة التطبيقات الخاصة بخدمة Firebase Authentication.
No signOutUrl
عليك الاتصال بالرقم
firebase.auth.signOut()
والتعامل مع دالة رد الاتصال.No oobActionUrl
تتولّى Firebase الآن عملية إرسال الرسائل الإلكترونية، ويتم إعدادها في وحدة تحكّم Firebase.
تخصيص CSS
تستخدم FirebaseUI تصميم Material Design Lite، الذي يضيف بشكل ديناميكي رسومات Material Design المتحركة.
الخطوة 1: تغيير رمز الخادم
إذا كان الخادم يعتمد على رمز Identity Toolkit المميّز (صالح لمدة أسبوعين) لإدارة جلسات مستخدمي الويب، عليك تحويل الخادم لاستخدام ملف تعريف ارتباط الجلسة الخاص به.
- نفِّذ نقطة نهاية للتحقّق من صحة رمز تعريف Firebase المميز وتعيين ملف تعريف ارتباط الجلسة للمستخدم. يرسل تطبيق العميل رمز تعريف Firebase إلى نقطة النهاية هذه.
- إذا كان الطلب الوارد يتضمّن ملف تعريف ارتباط الجلسة الخاص بك، يمكنك اعتبار المستخدم مصادقًا عليه. بخلاف ذلك، يجب التعامل مع الطلب على أنّه غير مصادق عليه.
- إذا كنت لا تريد أن يفقد أي من المستخدمين جلسات تسجيل الدخول الحالية، عليك الانتظار لمدة أسبوعَين إلى أن تنتهي صلاحية جميع رموز Identity Toolkit المميزة، أو يمكنك أيضًا إجراء عملية التحقّق من صحة الرمز المميّز المزدوج لتطبيق الويب كما هو موضّح أدناه في الخطوة 3.
بعد ذلك، بما أنّ رموز Firebase تختلف عن رموز Identity Toolkit، عليك تعديل منطق التحقّق من صحة الرموز. ثبِّت حزمة تطوير البرامج (SDK) لخادم Firebase على الخادم، أو إذا كنت تستخدم لغة غير متوافقة مع حزمة تطوير البرامج (SDK) لخادم Firebase، نزِّل مكتبة للتحقّق من صحة رمز JWT المميز لبيئة التشغيل وتحقّق من صحة الرمز المميز بشكل صحيح.
عند إجراء التعديلات المذكورة أعلاه للمرة الأولى، قد تظل لديك مسارات رموز برمجية تعتمد على رموز Identity Toolkit المميزة. إذا كان لديك تطبيقات iOS أو Android، على المستخدمين الترقية إلى الإصدار الجديد من التطبيق لكي تعمل مسارات الرموز البرمجية الجديدة. إذا كنت لا تريد إجبار المستخدمين على تعديل تطبيقك، يمكنك إضافة منطق إضافي للتحقّق من صحة الخادم يفحص الرمز المميّز ويحدّد ما إذا كان يجب استخدام حزمة تطوير البرامج (SDK) الخاصة بمنصة Firebase أو حزمة تطوير البرامج (SDK) الخاصة بمنصة Identity Toolkit للتحقّق من صحة الرمز المميّز. إذا كان لديك تطبيق ويب فقط، سيتم نقل جميع طلبات المصادقة الجديدة إلى Firebase، وبالتالي، لن تحتاج إلا إلى استخدام طرق التحقّق من الرمز المميّز في Firebase.
راجِع مرجع Firebase Web API.
الخطوة 2: تعديل ملف HTML
أضِف رمز تهيئة Firebase إلى تطبيقك:
- افتح مشروعك في وحدة تحكُّم Firebase.
- في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثمّ انقر على إضافة Firebase إلى تطبيق الويب. سيظهر مقتطف رمز يضبط إعدادات Firebase.
- انسخ مقتطف الإعداد والصقه في صفحة الويب.
أضِف FirebaseUI Auth إلى تطبيقك:
<script src="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.js"></script> <link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.css" /> <!-- ******************************************************************************************* * TODO(DEVELOPER): Paste the initialization snippet from: * Firebase Console > Overview > Add Firebase to your web app. * ***************************************************************************************** --> <script type="text/javascript"> // FirebaseUI config. var uiConfig = { 'signInSuccessUrl': '<url-to-redirect-to-on-success>', 'signInOptions': [ // Leave the lines as is for the providers you want to offer your users. firebase.auth.GoogleAuthProvider.PROVIDER_ID, firebase.auth.FacebookAuthProvider.PROVIDER_ID, firebase.auth.TwitterAuthProvider.PROVIDER_ID, firebase.auth.GithubAuthProvider.PROVIDER_ID, firebase.auth.EmailAuthProvider.PROVIDER_ID ], // Terms of service url. 'tosUrl': '<your-tos-url>', }; // Initialize the FirebaseUI Widget using Firebase. var ui = new firebaseui.auth.AuthUI(firebase.auth()); // The start method will wait until the DOM is loaded. ui.start('#firebaseui-auth-container', uiConfig); </script>
أزِل حزمة تطوير البرامج (SDK) الخاصة بـ Identity Toolkit من تطبيقك.
إذا كنت تعتمد على رمز التعريف المميز في Identity Toolkit لإدارة الجلسات، عليك إجراء التغييرات التالية من جهة العميل:
بعد تسجيل الدخول بنجاح باستخدام Firebase، احصل على رمز مميّز لمعرّف Firebase من خلال استدعاء
firebase.auth().currentUser.getToken()
.أرسِل الرمز المميّز لتعريف Firebase إلى خادم الخلفية، وتحقّق من صحته، وأصدِر ملف تعريف ارتباط خاصًا بالجلسة.
لا تعتمد فقط على ملف تعريف ارتباط الجلسة عند تنفيذ عمليات حساسة أو إرسال طلبات تعديل مصادَق عليها إلى الخادم. عليك توفير حماية إضافية من تزوير الطلبات على مستوى المواقع الإلكترونية (CSRF).
إذا كان إطار العمل لا يوفّر الحماية من طلبات التزوير عبر المواقع، يمكنك منع حدوث هجوم من خلال الحصول على رمز مميّز لمعرّف Firebase للمستخدم الذي سجّل الدخول باستخدام
getToken()
وتضمين الرمز المميّز مع كل طلب (سيتم أيضًا إرسال ملف تعريف ارتباط الجلسة تلقائيًا). بعد ذلك، عليك التحقّق من صحة الرمز المميّز باستخدام حزمة تطوير البرامج (SDK) لخادم Firebase بالإضافة إلى التحقّق من ملف تعريف ارتباط الجلسة، وهي العملية التي أتمّها إطار عمل الخلفية. سيصعّب ذلك من نجاح هجمات CSRF، لأنّه يتم تخزين رمز تعريف Firebase المميز باستخدام مساحة التخزين على الويب فقط، وليس في ملف تعريف ارتباط أبدًا.تكون رموز Identity Toolkit المميزة صالحة لمدة أسبوعين. يمكنك مواصلة إصدار رموز مميّزة تدوم لمدة أسبوعين، أو يمكنك إطالة المدة أو تقصيرها استنادًا إلى متطلبات الأمان في تطبيقك. وعندما يسجّل المستخدم خروجه، عليك محو ملف تعريف ارتباط الجلسة.
الخطوة 3: تعديل عناوين URL لإعادة التوجيه لموفِّر الهوية
في وحدة تحكّم Firebase، افتح قسم "المصادقة" وانقر على علامة التبويب طريقة تسجيل الدخول.
لكل موفّر تسجيل دخول موحّد يمكنك استخدامه، اتّبِع الخطوات التالية:
- انقر على اسم مقدّم خدمة تسجيل الدخول.
- انسخ معرّف الموارد المنتظم (URI) الخاص بإعادة التوجيه عبر بروتوكول OAuth.
- في وحدة تحكّم المطوّر الخاصة بموفّر خدمة تسجيل الدخول، عدِّل معرّف الموارد المنتظم (URI) الخاص بإعادة التوجيه في OAuth.
Android
الخطوة 1: إضافة Firebase إلى تطبيقك
افتح وحدة تحكّم Firebase واختَر مشروع Identity Toolkit الذي سبق لك استيراده.
في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثم انقر على إضافة Firebase إلى تطبيق Android. في مربّع الحوار "إضافة Firebase"، أدخِل اسم حزمة تطبيقك وبصمة شهادة التوقيع، ثم انقر على إضافة تطبيق. سيتم بعد ذلك تنزيل ملف الإعداد
google-services.json
على جهاز الكمبيوتر.انسخ ملف الإعداد إلى الدليل الجذري لوحدة تطبيق Android. يحتوي ملف الإعداد هذا على معلومات حول المشروع وعميل Google OAuth.
في ملف
build.gradle
على مستوى المشروع (<var>your-project</var>/build.gradle
)، حدِّد اسم حزمة تطبيقك في القسمdefaultConfig
:defaultConfig { ….. applicationId "com.your-app" }
في ملف
build.gradle
على مستوى المشروع أيضًا، أضِف تبعية لتضمين المكوّن الإضافي google-services:buildscript { dependencies { // Add this line classpath 'com.google.gms:google-services:3.0.0' } }
في ملف
build.gradle
على مستوى التطبيق في تطبيقك (<var>my-project</var>/<var>app-module</var>/build.gradle
)، أضِف السطر التالي في الأسفل لتفعيل المكوّن الإضافي google-services:// Add to the bottom of the file apply plugin: 'com.google.gms.google-services'
يستخدم المكوّن الإضافي google-services الملف
google-services.json
لإعداد تطبيقك لاستخدام Firebase.في ملف
build.gradle
على مستوى التطبيق، أضِف أيضًا تبعية Firebase Authentication:compile 'com.google.firebase:firebase-auth:24.0.1' compile 'com.google.android.gms:play-services-auth:21.4.0'
الخطوة 2: إزالة حزمة تطوير البرامج Identity Toolkit
- أزِل إعدادات Identity Toolkit من الملف
AndroidManifest.xml
. يتم تضمين هذه المعلومات في ملفgoogle-service.json
ويتم تحميلها بواسطة المكوّن الإضافي google-services. - أزِل حزمة تطوير البرامج (SDK) الخاصة بـ Identity Toolkit من تطبيقك.
الخطوة 3: إضافة FirebaseUI إلى تطبيقك
أضِف FirebaseUI Auth إلى تطبيقك.
في تطبيقك، استبدِل طلبات البيانات من حزمة تطوير البرامج (SDK) الخاصة بـ Identity Toolkit بطلبات البيانات من FirebaseUI.
iOS
الخطوة 1: إضافة Firebase إلى تطبيقك
أضِف حزمة تطوير البرامج (SDK) لمنصة Firebase إلى تطبيقك من خلال تنفيذ الأوامر التالية:
$ cd your-project directory $ pod init $ pod 'Firebase'
افتح وحدة تحكّم Firebase واختَر مشروع Identity Toolkit الذي سبق لك استيراده.
في صفحة "نظرة عامة"، انقر على إضافة تطبيق، ثم انقر على إضافة Firebase إلى تطبيقك على iOS. في مربّع الحوار "إضافة Firebase"، أدخِل رقم تعريف حزمة تطبيقك ورقم تعريف متجر التطبيقات، ثم انقر على إضافة تطبيق. سيتم بعد ذلك تنزيل ملف الإعداد
GoogleService-Info.plist
على جهاز الكمبيوتر. إذا كان لديك عدّة معرّفات حِزم في مشروعك، يجب ربط كل معرّف حزمة في وحدة تحكّم Firebase لكي يكون لكل معرّف ملفGoogleService-Info.plist
خاص به.انسخ ملف الإعداد إلى جذر مشروع Xcode وأضِفه إلى جميع الأهداف.
الخطوة 2: إزالة حزمة تطوير البرامج Identity Toolkit
- أزِل
GoogleIdentityToolkit
من ملف Podfile الخاص بتطبيقك. - نفِّذ الأمر
pod install
.
الخطوة 3: إضافة FirebaseUI إلى تطبيقك
أضِف FirebaseUI Auth إلى تطبيقك.
في تطبيقك، استبدِل طلبات البيانات من حزمة تطوير البرامج (SDK) الخاصة بـ Identity Toolkit بطلبات البيانات من FirebaseUI.