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

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

תכונות חדשות

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

  • מסוף Admin חדש

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

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

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

  • התאמה לעומס (SLA) של הסכמי רמת שירות (SLA) ותמיכה ב-Cloud

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

  • גישה לכל האפליקציות ב-Firebase

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

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

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

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

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

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

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

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

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

הבדלי תכונות

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

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

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

  • ספקי זהויות

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

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

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

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

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

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

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

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

  • השקת IDP

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

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

ב-Identity Platform, התכונות שמספקות ערכת הכלים של Google Identity מתפצלות לשני רכיבים:

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

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

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

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

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

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

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

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

כדי לעבור מערכת הכלים של הזהויות ל-Identity Platform, צריך:

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

  2. ב-Marketplace, נכנסים אל Identity Platform ובוחרים באפשרות 'Enable Identity Platform' (הפעלת פלטפורמת זהויות).

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

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

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

    ב-Identity Toolkit, שבו משתמשים איפסו סיסמאות, שינו כתובות אימייל או אימתו את כתובות האימייל שלהם, היה צורך לקבל קוד OOB מהשרת של Identity ערכת הכלים ולשלוח את הקוד למשתמשים באימייל. פלטפורמת 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 מערכת הכלים של Identity.

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

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

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

    תצטרכו להגדיר את משך החיים של קובץ ה-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, שמוסיפה באופן דינמי אנימציות של עיצוב חדשני תלת-ממדי.

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

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

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

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

אפשר לעיין בחומר העזר בנושא Web API.

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

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

    1. פותחים את הפרויקט במסוף Cloud.
    2. בדף providers, לוחצים על 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 של ערכת הכלים לניהול זהויות מהאפליקציה שלך.

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

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

    2. שולחים את אסימון המזהה לשרת הקצה העורפי, מאמתים אותו ומפיקים את קובץ ה-cookie של הסשן.

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

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

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

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

  1. ב-Cloud Console, פותחים את הקטע Providers.

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

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

Android

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

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

  2. בדף 'ספקים', לוחצים על 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. בקובץ build.gradle ברמת האפליקציה (<var>my-project</var>/<var>app-module</var>/build.gradle), מוסיפים את השורה הבאה אחרי הפלאגין Android Gradle כדי להפעיל את הפלאגין google-services:

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

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

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

    compile 'com.google.firebase:firebase-auth:22.3.1'
    compile 'com.google.android.gms:play-services-auth:21.0.0'
    

שלב 2: הסרת ה-SDK של ערכת הכלים לזהות

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

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

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

  2. באפליקציה, החליפו את הקריאות ל-Identity Toolkit בקריאות ל-FirebaseUI.

iOS

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

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

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

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

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

שלב 2: הסרת ה-SDK של ערכת הכלים לזהות

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

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

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

  2. באפליקציה, החליפו את הקריאות ל-Identity Toolkit בקריאות ל-FirebaseUI.