ביצוע אימות באמצעות Firebase באופן אנונימי באמצעות Unity

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

לפני שמתחילים

  1. לפני שמשתמשים Firebase Authentication צריך להוסיף את Firebase Unity SDK (באופן ספציפי, FirebaseAuth.unitypackage) לפרויקט ב-Unity.

    הוראות מפורטות לשלבי הגדרה ראשוניים אלה מפורטות ב הוספת Firebase אל פרויקט ב-Unity.

  2. אם עדיין לא קישרתם את האפליקציה לפרויקט Firebase, תוכלו לעשות זאת דרך מסוף Firebase.
  3. הפעלת אימות אנונימי:
    1. במסוף Firebase, פותחים את הקטע אימות.
    2. בדף שיטות כניסה, מפעילים את האפשרות אנונימית. שיטת כניסה לחשבון.
    3. אופציונלי: אם שדרגתם את הפרויקט ל- Firebase Authentication with Identity Platform, אפשר להפעיל את הניקוי האוטומטי. מתי אם תפעילו את ההגדרה הזו, חשבונות אנונימיים מלפני יותר מ-30 יום יועברו אוטומטית נמחק. בפרויקטים שבהם הפעלתם את הניקוי האוטומטי, אימות אנונימי לא ייספר יותר במסגרת מגבלות השימוש או המכסות לחיוב. צפייה ניקוי אוטומטי.

אימות אנונימי ב-Firebase

כשמשתמש שלא מחובר לחשבון משתמש בתכונה באפליקציה שמחייבת אימות באמצעות ב-Firebase, מבצעים את הפעולות הבאות כדי להיכנס למשתמש באופן אנונימי:

הכיתה FirebaseAuth היא השער לכל הקריאות ל-API. אפשר לגשת אליה דרך FirebaseAuth.DefaultInstance.
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
1. התקשרות אל Firebase.Auth.FirebaseAuth.SignInAnonymouslyAsync.
auth.SignInAnonymouslyAsync().ContinueWith(task => {
  if (task.IsCanceled) {
    Debug.LogError("SignInAnonymouslyAsync was canceled.");
    return;
  }
  if (task.IsFaulted) {
    Debug.LogError("SignInAnonymouslyAsync encountered an error: " + task.Exception);
    return;
  }

  Firebase.Auth.AuthResult result = task.Result;
  Debug.LogFormat("User signed in successfully: {0} ({1})",
      result.User.DisplayName, result.User.UserId);
});

המרת חשבון אנונימי לחשבון קבוע

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

  1. כשהמשתמש נרשם, משלימים את תהליך הכניסה לחשבון ספק אימות עד, אך לא כולל, התקשרות לאחד Firebase.Auth.FirebaseAuth.SignInAndRetrieveDataWithCredentialAsync אמצעי תשלום. לדוגמה, אחזור של אסימון מזהה של המשתמש ב-Google, אסימון גישה של המשתמש ב-Facebook או כתובת האימייל והסיסמה של המשתמש.
  2. מקבלים Firebase.Auth.Credential עבור ספק האימות החדש:

  3. מעבירים את האובייקט Firebase.Auth.Credential אל של המשתמש שמבצע את הכניסה LinkWithCredentialAsync method:

אם הקריאה אל LinkWithCredentialAsync תתבצע בהצלחה, החשבון החדש של המשתמש יוכל לגשת לנתוני Firebase של החשבון האנונימי.

ניקוי אוטומטי

אם שדרגתם את הפרויקט ל-Firebase Authentication with Identity Platform, תוכלו: להפעיל ניקוי אוטומטי במסוף Firebase. כשמפעילים את התכונה הזו, מאפשרים Firebase ימחק באופן אוטומטי חשבונות אנונימיים מלפני יותר מ-30 יום. בפרויקטים שבהם הפעלתם את הניקוי האוטומטי, אימות אנונימי לא ייספר במגבלות השימוש או במכסות החיוב.

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

אם אתם רוצים לראות כמה משתמשים יושפעו לפני שתפעילו את התכונה הזו, שדרג את הפרויקט ל-Firebase Authentication with Identity Platform, אפשר לסנן לפי is_anon ב-Cloud רישום ביומן.

השלבים הבאים

עכשיו, שהמשתמשים יכולים לבצע אימות באמצעות Firebase, יש לך אפשרות לשלוט בגישה שלהם אל במסד הנתונים של Firebase באמצעות כללים ב-Firebase.