مشغّلات مصادقة Firebase (الجيل الأول)

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

للاطّلاع على المزيد من الأمثلة حول حالات الاستخدام، راجِع المقالة ما هي الإجراءات التي يمكنني اتّخاذها في Cloud Functions؟.

تشغيل دالة عند إنشاء مستخدم

يمكنك إنشاء دالة يتم تشغيلها عند إنشاء مستخدم Authentication باستخدام معالج الأحداث functions.auth.user().onCreate():

exports.sendWelcomeEmail = functions.runWith({secrets: [emailApiKey]}).auth.user().onCreate((user) => {
  // ...
});

ستؤدي حسابات Authentication إلى تشغيل أحداث إنشاء المستخدمين لحساب Cloud Functions في الحالات التالية:

  • ينشئ المستخدم حساب بريد إلكتروني وكلمة مرور.
  • يسجِّل المستخدم الدخول لأول مرة باستخدام موفِّر هوية موحَّدة.
  • ينشئ المطوّر حسابًا باستخدام Admin SDK.
  • يسجِّل المستخدم الدخول إلى جلسة مصادقة جديدة بدون تحديد الهوية لأول مرة.

Cloud Functions لا يتم تشغيل الحدث عند تسجيل المستخدم الدخول للمرة الأولى باستخدام رمز مميّز مخصّص.

الوصول إلى سمات المستخدمين

من بيانات المستخدم التي تم إرجاعها إلى الدالة، يمكنك الوصول إلى قائمة سمات المستخدم المتوفّرة في عنصر UserRecord الخاص بالمستخدم الذي تم إنشاؤه حديثًا. على سبيل المثال، يمكنك الحصول على البريد الإلكتروني للمستخدم واسمه المعروض كما هو موضّح:

const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.

تشغيل دالة عند حذف المستخدم

وكما يمكنك تشغيل دالة عند إنشاء مستخدم، يمكنك الاستجابة لأحداث حذف المستخدم. استخدِم معالج الأحداث functions.auth.user().onDelete() كما هو موضّح:

exports.sendByeEmail = functions.runWith({secrets: [emailApiKey]}).auth.user().onDelete((user) => {
  // ...
});

وظائف حظر المشغّلات

إذا تمت ترقية اشتراكك إلى Firebase Authentication with Identity Platform، يمكنك تمديد Firebase Authentication باستخدام حظر Cloud Functions.

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