טריגרים לאימות ב-Firebase

אפשר להפעיל פונקציות בתגובה ליצירה ולמחיקה של Firebase חשבונות משתמשים. לדוגמה, תוכלו לשלוח הודעת אימייל של קבלת פנים למשתמש שזה עתה יצר חשבון באפליקציה. הדוגמאות בדף הזה מבוססות על דוגמה שמבצעת בדיוק את הפעולה הזו – שולחת הודעות אימייל של קבלת פנים ושל פרידה בזמן יצירת החשבון ובזמן המחיקה שלו.

דוגמאות נוספות לתרחישי שימוש מפורטות במאמר מה אפשר לעשות עם Cloud Functions?.

הפעלת פונקציה בזמן יצירת משתמש

אפשר ליצור פונקציה שתופעל כשמשתמש Firebase נוצר באמצעות בורר האירועים functions.auth.user().onCreate():

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

חשבונות Firebase יפעילו אירועי יצירת משתמשים ב-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.auth.user().onDelete((user) => {
  // ...
});

הפעלת פונקציות חסימה

אם שדרגתם ל-Firebase Authentication with Identity Platform, תוכלו להאריך את Firebase Authentication באמצעות חסימת Cloud Functions.

פונקציות חסימה מאפשרות להריץ קוד מותאם אישית שמשנה את התוצאה של רישום משתמש או כניסה של משתמש לאפליקציה. לדוגמה, אפשר למנוע ממשתמש לבצע אימות אם הוא לא עומד בקריטריונים מסוימים, או לעדכן את הפרטים של משתמש לפני שהם מוחזרים לאפליקציית הלקוח.