مشغلات مصادقة Firebase

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

لمزيد من الأمثلة على حالات الاستخدام، راجع ما الذي يمكنني فعله باستخدام وظائف السحابة؟ .

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

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

exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => {
  // ...
});

ستقوم حسابات Firebase بتشغيل أحداث إنشاء المستخدم لوظائف السحابة عندما:

  • يقوم المستخدم بإنشاء حساب بريد إلكتروني وكلمة مرور.
  • يقوم المستخدم بتسجيل الدخول لأول مرة باستخدام موفر هوية موحد.
  • يقوم المطور بإنشاء حساب باستخدام Firebase 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.auth.user().onDelete((user) => {
  // ...
});

وظائف حظر الزناد

إذا قمت بالترقية إلى مصادقة Firebase باستخدام Identity Platform، فيمكنك توسيع مصادقة Firebase باستخدام حظر وظائف السحابة .

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