העברה מכניסה ל-Google+

שלבים לצמצום ההשפעה של שינויים בהיקף על משתמשים

  1. אם באפליקציה שלכם נדרשת כתובת האימייל של משתמש מאומת, והשתמשתם בעבר ב-profile.emails.read למטרה הזו, השתמשו ב-email במקום זאת.
  2. מקבלים אישור ל-profile.emails.read באמצעות בקשת אימות שאושרה. אפשר לעיין במאמר איך שולחים אפליקציה לאימות?
  3. מבטלים את אסימון המשתמש הקודם בהיקף שרוצים להסיר, או מסירים לחלוטין את הגישה לאפליקציה. לדוגמה, צריך לבטל אסימון עם הרשאת גישה profile.emails.read. מומלץ לבצע את ביטול ההסכמה בזמן שהמשתמשים נמצאים באפליקציה, כדי שתוכלו לקבל את הסכמת המשתמשים באופן מיידי.
  4. מבקשים מהמשתמשים להביע הסכמה מחדש בהיקף החדש, למשל email, בלי profile.emails.read.
  5. מסירים את ההיקף שרוצים להוציא משימוש מהגדרת מסך ההסכמה ל-OAuth של Google APIs.

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

כשתעדכנו את לחצן הכניסה, אל תתייחסו אל G+ ואל תשתמשו בצבע האדום. לעמוד בהנחיות המיתוג המעודכנות שלנו.

רוב האפליקציות שנכנסים אליהן באמצעות חשבון Google+ ביקשו שילוב כלשהו של ההיקפים: plus.login, plus.me ו-plus.profile.emails.read. שימוש ב-GoogleSignInOptions.Builder עם האפשרות DEFAULT_SIGN_IN יגרום לבקשה אוטומטית של ההיקף profile, שמספק את השם ותמונת הפרופיל של המשתמש. אם רוצים לקבל גם את כתובת האימייל של המשתמש, צריך להפעיל את הפונקציה .requestEmail() כשמגדירים את אפשרויות הכניסה באמצעות חשבון Google.

מיישמים רבים של כניסה באמצעות Google+ השתמשו בזרימת הקוד. כלומר, האפליקציות ל-Android, ל-iOS או ל-JavaScript יקבלו מ-Google קוד הרשאה ל-OAuth, והלקוח ישלח את הקוד הזה בחזרה לשרת, יחד עם הגנה מפני זיוף בקשות באתרים שונים. לאחר מכן, השרת מאמת את הקוד ומקבל אסימוני רענון ואסימוני גישה כדי למשוך את פרטי פרופיל המשתמש מ-API ‏people.get.

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

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

אם אתם משתמשים ב-GoogleAuthUtil.getToken או ב-Plus.API, כדאי להעביר את הקוד לממשק Sign-In API העדכני ביותר כדי לשפר את האבטחה ואת חוויית המשתמש.