מעבר מערכת הכלים של Google Identity לפלטפורמת Identity Platform של Google Cloud

הגרסה החדשה של ערכת הכלים של Google Identity פורסמה בתור Identity Platform ואימות ב-Firebase. בהמשך יוקפאו התכונות בערכת הכלים לניהול זהויות (IAM). כל פיתוח התכונות החדשות יתבצע ב-Identity Platform ובאימות ב-Firebase. אנחנו מעודדים את המפתחים של Identity Toolkit לעבור לפלטפורמות האלה ברגע שהדבר יהיה רלוונטי לאפליקציות שלהם.

תכונות חדשות

הפלטפורמה של Identity Platform כבר ביצעה שיפורים משמעותיים בתכונות בהשוואה ל-Google Identity Toolkit:

  • מסוף Admin החדש

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

  • שיטות אימות חדשות

    פלטפורמת Identity Platform תומכת בתקנים של איחוד שירותי אימות הזהות של הארגון, כמו SAML ו-OIDC, ומאפשרת לבצע התאמה לעומס (scaling) של אפליקציות ושירותים של SaaS. פלטפורמת Identity Platform מספקת תמיכה גם לספקים כמו GitHub, Microsoft, Yahoo ועוד. אפשר להשתמש בכניסה אנונימית כדי ליצור מזהה משתמש ייחודי בלי לדרוש מהמשתמש לבצע תהליך כניסה או הרשמה. כך תוכלו לבצע קריאות מאומתות ל-API בדיוק כמו מול משתמש רגיל. כשמשתמש מחליט להירשם לחשבון, כל הפעילות נשמרת עם אותו מזהה משתמש. ההשוואה הזו שימושית בתרחישים כמו עגלות קניות בצד השרת או אפליקציות אחרות, שבהן אתם רוצים לעורר עניין בקרב המשתמשים לפני שהם שולחים אותם בתהליך הרשמה.

  • התאמה לעומס (scaling) בביטחון בעזרת הסכמי רמת שירות (SLA) ותמיכה ב-Cloud

    Identity Platform מבוססת על תשתית מהימנה של Google, ומספקת הסכמי רמת שירות (SLA) ותמיכה מ-Google Cloud. המשמעות היא שאתם יכולים להרחיב את השירות בביטחון ולהסתמך על Google כדי לספק את החוסן, הזמינות והמדרגיות שדרושים לכם.

  • גישה לכל הפלטפורמות של Firebase

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

  • ממשקי משתמש מעודכנים

    שחזרנו לגמרי את תהליכי העבודה בממשק המשתמש על סמך המחקר האחרון של Google בנושא חוויית המשתמש. התהליך הזה כולל שחזור סיסמאות, קישור חשבונות, תהליכי הבהרה לגבי חשבונות חדשים וקיימים שלרוב לוקח זמן רב כדי לקודד ולנפות באגים. הוא משלב את Smart Lock לסיסמאות ב-Android, ששיפר משמעותית את תהליך הכניסה וההרשמה לאפליקציות המשתתפות. הוא גם תומך בשינויים קלים בעיצוב כדי שיתאימו לאפליקציה שלכם, וכדי לאפשר התאמה אישית מקסימלית, גרסאות Android ו-iOS מבוססות על קוד פתוח.

  • הגדרה פשוטה של השרת

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

  • ערכות SDK חדשות

    כל ממשקי ה-API לשרתים של Identity Toolkit זמינים עכשיו באופן מקומי בכל אחת מספריות הלקוח שלנו (Android, iOS, אתרים). המפתחים יוכלו להיכנס לחשבון, לרשום משתמשים ישנים וחדשים, לגשת למאפייני משתמשים, לקשר, לעדכן ולמחוק חשבונות, לאפס סיסמאות ועוד, בלי להיות מקושרים לממשק משתמש קבוע. אם אתם מעדיפים, תוכלו ליצור באופן ידני את כל תהליך הכניסה ואת חוויית המשתמש מעל ה-API הזה.

  • ניהול סשנים באפליקציות לנייד

    באמצעות Identity Toolkit, אפליקציות יצרו מצב סשן משלהן על סמך אירוע האימות הראשוני מ-Identity Toolkit. פלטפורמת Identity Platform משתמשת בשירות לקצה העורפי שלוקח אסימון רענון שנוצר מאירוע האימות, וממירה אותו באסימוני גישה למשך שעה ל-Android, ל-iOS ול-JavaScript. כשמשתמש משנה את הסיסמה שלו, אסימוני הרענון לא יכולים יותר ליצור אסימוני גישה חדשים וכתוצאה מכך להשבית את הגישה עד שהמשתמש מבצע אימות מחדש במכשיר הזה.

הבדלים בתכונות

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

הבדלים בצד השרת

בוצעו עדכונים קלים בלבד בשירות הליבה של Identity Toolkit, עם ממשקי ה-API בארכיטקטורת REST, לוגיקת אימות החשבון ומסד הנתונים הראשי של המשתמשים. אבל חלק מהתכונות והאופן שבו משלבים את Identity Platform בשירות השתנה.

  • ספקי זהויות

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

  • ספריות שרתים

    כרגע יש ערכות Admin SDK שזמינות ל-Java, Node.js, Python, Go ו-C#.

  • אימיילים לגבי ניהול החשבון

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

  • אישור השינוי של כתובת האימייל

    בערכת הכלים לניהול זהויות, כשמשתמש מחליט לשנות את כתובת האימייל שלו, הוא שולח אימייל לכתובת החדשה שכוללת קישור להמשך תהליך השינוי של כתובת האימייל.

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

  • השקת ה-IdP

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

הבדלים בצד הלקוח

ב-Identity Platform, התכונות של Google Identity Toolkit מחולקות לשני רכיבים:

  • ערכות SDK של לקוחות ושרתים

    ב-Identity Platform, הפונקציונליות של ה-API ל-REST של Identity Toolkit נארזה בערכות SDK ברמת הלקוח שזמינות ל-Android, ל-iOS ול-JavaScript. תוכלו להשתמש ב-SDK כדי להיכנס ולרשום משתמשים, לגשת לפרטי הפרופיל של המשתמשים, לקשר, לעדכן ולמחוק חשבונות ולאפס סיסמאות באמצעות ה-SDK של הלקוח במקום לתקשר עם השירות לקצה העורפי באמצעות קריאות ל-REST.

  • ווידג'ט של ממשק המשתמש

    כל התהליכי ממשק המשתמש לניהול כניסה, הרשמה, שחזור סיסמה וקישור חשבונות נבנו מחדש באמצעות ערכות ה-SDK של הלקוח וארזו כווידג'ט להתחברות. הן זמינות כערכות SDK בקוד פתוח ל-iOS, ל-Android ול-אינטרנט, ומאפשרות להתאים אישית את התהליכים באופן מלא בדרכים שלא אפשריות באמצעות Identity Toolkit.

הבדלים נוספים כוללים:

  • סשנים והעברה

    מכיוון שסשנים מנוהלים בצורה שונה ב-Identity Toolkit וב-Identity Platform, הסשנים הקיימים של המשתמשים יפסיקו לפעול אחרי השדרוג של ה-SDK והמשתמשים יצטרכו להיכנס שוב לחשבון.

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

כדי לעבור מ-Identity Toolkit ל-Identity Platform, צריך:

  1. פותחים את מסוף Cloud ובוחרים את הפרויקט של ערכת הכלים לניהול זהויות.

  2. מ-Marketplace, עוברים אל Identity Platform ובוחרים באפשרות 'הפעלת Identity Platform'

  3. פותחים את הדף Service accounts. כאן תוכלו לראות את חשבון השירות שהגדרתם בעבר ל-Identity Toolkit.

  4. ליד חשבון השירות, לוחצים על > Create key. לאחר מכן, בתיבת הדו-שיח Create private key, מגדירים את סוג המפתח כ-JSON ולוחצים על Create. המערכת תוריד עבורכם קובץ JSON שמכיל את פרטי הכניסה של חשבון השירות שלכם. צריך את המידע הזה כדי לאתחל את ה-SDK בשלב הבא.

  5. חוזרים אל מסוף Cloud. בקטע 'ספקים', בשיטת הכניסה 'אימייל/סיסמה', פותחים את הדף Email Templates. לאחר מכן תוכלו להתאים אישית את התבניות של האפליקציה.

    בערכת הכלים לניהול זהויות, כשמשתמשים מאפסים סיסמאות, שינו כתובות אימייל או אימתו את כתובות האימייל שלהם, הייתם צריכים לקבל קוד OOB מהשרת של ערכת הכלים לניהול זהויות ואז לשלוח את הקוד למשתמשים באימייל. Identity Platform שולח אימיילים על סמך התבניות שהגדרתם, ללא צורך בפעולות נוספות.

  6. אופציונלי: אם אתם צריכים לגשת לשירותי Identity Platform בשרת שלכם, מתקינים את Firebase SDK.

    1. תוכלו להתקין את Node.js Admin SDK באמצעות npm:

      $ npm init
      $ npm install --save firebase-admin
      
    2. בקוד שלכם, אפשר לגשת ל-Firebase באמצעות:

      var admin = require('firebase-admin');
      var app = admin.initializeApp({
        credential: admin.credential.cert('path/to/serviceAccountCredentials.json')
      });
      

לאחר מכן מבצעים את שלבי ההעברה לפלטפורמת האפליקציה: Android, iOS, אתר.

שרתים ו-JavaScript

שינויים חשובים

יש כמה הבדלים נוספים בהטמעה של Identity Platform באינטרנט לפי ערכת הכלים לניהול זהויות.

  • ניהול סשנים באינטרנט

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

    ערכות ה-SDK של לקוח Identity Platform מנהלות עכשיו אסימונים מזהים ועובדות עם הקצה העורפי של Identity Platform כדי לשמור על עדכניות הסשן. תוקף הפעילות של הקצה העורפי פג כאשר התרחשו שינויים חשובים בחשבון (כמו שינויים בסיסמאות של המשתמשים). אסימונים מזהים לא מוגדרים באופן אוטומטי כקובצי cookie בלקוח האינטרנט, ומשך החיים שלהם הוא שעה בלבד. אלא אם אתם רוצים סשנים של שעה בלבד, אסימוני מזהים לא מתאימים לשימוש כקובצי cookie כדי לאמת את כל בקשות הדפים. במקום זאת, תצטרכו להגדיר אוזן כשהמשתמש יתחבר, לקבל את אסימון המזהה, לאמת את האסימון וליצור קובץ Cookie משלכם באמצעות מערכת ניהול קובצי ה-Cookie של המסגרת שלכם.

    תצטרכו להגדיר את משך החיים של הסשן לקובץ ה-cookie לפי צורכי האבטחה של האפליקציה.

  • תהליך הכניסה לאינטרנט

    בעבר, המשתמשים הופנו אל accountchooser.com כשכניסה לחשבון בוצעה ביוזמתו, כדי לדעת באיזה מזהה המשתמש רצה להשתמש. התהליך בממשק המשתמש של Identity Platform מתחיל עכשיו עם רשימה של שיטות כניסה, כולל אפשרות לאימייל שעוברת אל accountchooser.com בדפדפן ומשתמשת ב-hintRequest API ב-Android. בנוסף, אין יותר צורך בכתובות אימייל בממשק המשתמש. כך יהיה קל יותר לתמוך במשתמשים אנונימיים, במשתמשים עם אימות מותאם אישית או במשתמשים מספקים שלא נדרשות כתובות אימייל.

  • הווידג'ט של ניהול החשבון

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

  • ווידג'ט או לחצן כניסה

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

  • ללא signOutUrl

    עליך להתקשר אל firebase.auth.signOut() ולטפל בהתקשרות החוזרת.

  • אין oobActionUrl

    שליחת האימיילים מטופלת עכשיו על ידי Identity Platform ומוגדרת במסוף Firebase.

  • התאמה אישית של שירות CSS

    בווידג'ט של ממשק המשתמש נעשה שימוש בסגנון Material Design Lite, שמוסיף באופן דינמי אנימציות של עיצוב Material Design.

שלב 1: שינוי קוד השרת

  1. אם השרת מסתמך על האסימון של Identity Toolkit (תקף לשבועיים) כדי לנהל סשנים של משתמשים באינטרנט, צריך להמיר את השרת כך שישתמש בקובץ Cookie של הסשן שלו.

    1. מטמיעים נקודת קצה לאימות האסימון המזהה ולהגדרת קובץ ה-cookie של הסשן בשביל המשתמש. אפליקציית הלקוח שולחת את האסימון המזהה של Firebase לנקודת הקצה הזו.
    2. אם הבקשה הנכנסת מכילה קובץ cookie משלכם לסשן, אפשר לבדוק אם המשתמש עבר אימות. אחרת, צריך להתייחס לבקשה כלא מאומתת.
    3. אם אתם לא רוצים שאף אחד מהמשתמשים שלכם יאבד את הסשנים הקיימים שלהם שמחוברים לחשבון, תצטרכו להמתין שבועיים עד שהתוקף של כל האסימונים של Identity Toolkit יפוג, או לבצע אימות של שני אסימונים לאפליקציית האינטרנט שלכם, כפי שמתואר בהמשך בשלב 3.
  2. לאחר מכן, מכיוון שאסימוני המזהים שונים מהאסימונים של ערכת הכלים הזהויות, אתם צריכים לעדכן את הלוגיקה של אימות האסימון. מתקינים את Admin SDK בשרת. לחלופין, אם משתמשים בשפה שלא נתמכת על-ידי Admin SDK, צריך להוריד ספריית אימות של אסימון JWT לסביבה ולאמת את האסימון בצורה נכונה.

  3. בפעם הראשונה שתבצעו את העדכונים שלמעלה, יכול להיות שעדיין יהיו נתיבי קוד שמסתמכים על אסימונים של ערכת הכלים לניהול זהויות (IAM). אם יש לכם אפליקציות ל-iOS או ל-Android, המשתמשים יצטרכו לשדרג לגרסה החדשה של האפליקציה כדי שנתיבי הקוד החדשים יפעלו. אם אתם לא רוצים לאלץ את המשתמשים לעדכן את האפליקציה, אתם יכולים להוסיף לוגיקה נוספת לאימות השרת שבודקת את האסימון וקובעת אם הוא צריך להשתמש ב-Firebase SDK או ב-Identity Toolkit כדי לאמת את האסימון. אם יש לכם רק אפליקציית אינטרנט, כל בקשות האימות החדשות יועברו לפלטפורמת Identity Platform, ולכן תצטרכו להשתמש רק בשיטות האימות של אסימון המזהה.

מידע נוסף זמין בחומר העזר בנושא Web API.

שלב 2: מעדכנים את קוד ה-HTML

  1. מוסיפים את קוד האתחול לאפליקציה:

    1. פותחים את הפרויקט במסוף Cloud.
    2. בדף ספקים, לוחצים על Application Setup Details. יוצג קטע קוד שמאתחל את Identity Platform.
    3. מעתיקים את קטע הקוד של האתחול ומדביקים אותו בדף האינטרנט.
  2. מוסיפים ווידג'ט אימות לאפליקציה:

    <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>
    
  3. צריך להסיר את ה-SDK של Identity Toolkit מהאפליקציה.

  4. אם הסתמכתם על האסימון המזהה של Identity Toolkit לניהול הסשן, עליכם לבצע את השינויים הבאים בצד הלקוח:

    1. אחרי הכניסה באמצעות Identity Platform, אפשר לשלוח קריאה לאסימון מזהה באמצעות firebase.auth().currentUser.getToken().

    2. שולחים את אסימון המזהה לשרת העורפי, מאמתים אותו ומנפיקים קובץ Cookie משלכם לסשן.

      אל תסתמכו רק על קובץ ה-cookie של הסשן כשמבצעים פעולות רגישות או כששולחים בקשות עריכה מאומתות לשרת שלכם. תצטרכו לספק הגנה נוספת מפני זיוף בקשות במספר אתרים (CSRF)

      אם ה-framework שלכם לא מספק הגנת CSRF, אחת הדרכים למניעת התקפה היא קבלת אסימון מזהה למשתמש שמחובר לחשבון באמצעות getToken(), ולכלול את האסימון בכל בקשה (גם קובץ ה-cookie של הסשן יישלח כברירת מחדל). לאחר מכן תצטרכו לאמת את האסימון הזה באמצעות ה-Admin SDK, בנוסף לבדיקת קובצי ה-cookie של הסשן, שהושלמה ה-framework של הקצה העורפי. זה יקשה על השלמת מתקפות CSRF, כי אסימון המזהה מאוחסן רק באחסון באינטרנט ואף פעם לא בקובץ Cookie.

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

שלב 3: עדכון כתובות ה-URL להפניה אוטומטית של ה-IdP

  1. במסוף Cloud, פותחים את הקטע Providers.

  2. מבצעים את הפעולות הבאות לכל ספק כניסה מאוחד שנתמך על ידי:

    1. לוחצים על השם של ספק הכניסה.
    2. מעתיקים את ה-URI להפניה אוטומטית של OAuth.
    3. במסוף המפתחים של ספק הכניסה, מעדכנים את ה-URI להפניה אוטומטית של OAuth.

Android

שלב 1: הוספת Identity Platform לאפליקציה באמצעות Firebase

  1. פותחים את מסוף Cloud ובוחרים את הפרויקט של Identity Toolkit.

  2. בדף Providers, לוחצים על Application setup details (פרטי הגדרת אפליקציה), בוחרים בכרטיסייה Android ואז לוחצים על Get Started in Firebase (תחילת העבודה ב-Firebase). בתיבת הדו-שיח Add Firebase, מזינים את שם החבילה ואת טביעת האצבע של אישור החתימה של האפליקציה, ולוחצים על Add App. לאחר מכן המערכת מורידה את קובץ התצורה google-services.json למחשב.

  3. מעתיקים את קובץ התצורה לספריית הבסיס של מודול האפליקציה ל-Android. קובץ התצורה הזה מכיל את הפרטים של הפרויקט ושל לקוח OAuth של Google.

  4. בקובץ build.gradle ברמת הפרויקט (<var>your-project</var>/build.gradle), מציינים את שם החבילה של האפליקציה בקטע defaultConfig:

    defaultConfig {
       …..
      applicationId "com.your-app"
    }
    
  5. בנוסף, בקובץ build.gradle ברמת הפרויקט, מוסיפים תלות כדי לכלול את הפלאגין google-services:

    buildscript {
     dependencies {
       // Add this line
       classpath 'com.google.gms:google-services:3.0.0'
     }
    }
    
  6. כדי להפעיל את הפלאגין google-services בקובץ build.gradle ברמת האפליקציה (<var>my-project</var>/<var>app-module</var>/build.gradle), מוסיפים את השורה הבאה אחרי הפלאגין Android Gradle:

    apply plugin: 'com.android.application'
    // Add this line
    apply plugin: 'com.google.gms.google-services'
    

    הפלאגין google-services משתמש בקובץ google-services.json כדי להגדיר את האפליקציה לשימוש ב-Firebase.

  7. בנוסף, בקובץ build.gradle ברמת האפליקציה מוסיפים את התלות של אימות ב-Firebase:

    compile 'com.google.firebase:firebase-auth:23.0.0'
    compile 'com.google.android.gms:play-services-auth:21.2.0'
    

שלב 2: הסרת ה-SDK של Identity Toolkit

  1. מסירים את ההגדרות של Identity Toolkit מהקובץ AndroidManifest.xml. המידע הזה כלול בקובץ google-service.json ונטען על ידי הפלאגין google-services.
  2. צריך להסיר את ה-SDK של Identity Toolkit מהאפליקציה.

שלב 3: מוסיפים את FirebaseUI לאפליקציה

  1. מוסיפים את FirebaseUI Auth לאפליקציה.

  2. באפליקציה שלך, עליך להחליף קריאות ל-Identity Toolkit SDK בקריאות ל-FirebaseUI.

iOS

שלב 1: מוסיפים את Firebase לאפליקציה

  1. כדי להוסיף את ה-SDK של הלקוח לאפליקציה, מריצים את הפקודות הבאות:

    $ cd your-project directory
    $ pod init
    $ pod 'Firebase'
    
  2. פותחים את מסוף Cloud ובוחרים את הפרויקט של Identity Toolkit.

  3. בדף Providers, לוחצים על Application setup details (פרטי הגדרת אפליקציה), בוחרים בכרטיסייה iOS ואז לוחצים על Get Started in Firebase (תחילת העבודה ב-Firebase). בתיבת הדו-שיח 'הוספת Firebase' מציינים את שם החבילה של האפליקציה ואת טביעת האצבע לאישור החתימה, ולוחצים על Add App. לאחר מכן קובץ התצורה google-services.json יורד למחשב. בתיבת הדו-שיח 'הוספת Firebase' מציינים את מזהה החבילה ומזהה האפליקציה ב-App Store ולוחצים על Add App. לאחר מכן קובץ התצורה GoogleService-Info.plist יורד למחשב. אם יש בפרויקט כמה מזהי חבילות, צריך לחבר כל מזהה חבילה למסוף Firebase כדי שיהיה לו קובץ GoogleService-Info.plist משלו.

  4. מעתיקים את קובץ התצורה לרמה הבסיסית (root) של פרויקט ה-Xcode ומוסיפים אותו לכל היעדים.

שלב 2: הסרת ה-SDK של Identity Toolkit

  1. צריך להסיר את GoogleIdentityToolkit מה-Podfile של האפליקציה.
  2. מריצים את הפקודה pod install.

שלב 3: מוסיפים את FirebaseUI לאפליקציה

  1. מוסיפים את FirebaseUI Auth לאפליקציה.

  2. באפליקציה שלך, עליך להחליף קריאות ל-Identity Toolkit SDK בקריאות ל-FirebaseUI.