גישה לנתונים והרשאה

ממשק Google Health API משתמש במסגרת חזקה וסטנדרטית לניהול הגישה לנתוני המשתמשים ולאבטחתם. מרכיב מרכזי בתהליך המודרניזציה הזה הוא המעבר משיטת ההרשאה הקודמת של Fitbit‏ (FOT) ל-OAuth 2.0 של Google. השינוי הזה מאפשר למפתחים להשתמש בספריות אימות סטנדרטיות של Google, וכך לפשט את ההטמעה ולספק למשתמשים ממשק מוכר ומרכזי לניהול ההרשאות שלהם.

רישום אפליקציה

כל האפליקציות של Google Health API צריכות להיות רשומות באמצעות Google Cloud Console, שמשמש כמרכז לניהול כל האפליקציות של Google.

הוראות לרישום האפליקציה מופיעות במאמר תחילת העבודה. אלה ההבדלים שתבחינו בהם כשאתם רושמים את האפליקציות.

Fitbit Web API Google Health API
קישורים שגלויים לכולם https://dev.fitbit.com/apps https://console.cloud.google.com
הוספת אפליקציה חדשה לוחצים על Register a new app (רישום אפליקציה חדשה).
  1. יצירת פרויקט ב-Google Cloud
  2. הפעלת Google Health API
פרטים בסיסיים השדות שצריך למלא:
  • שם האפליקציה
  • תיאור
  • כתובת ה-URL של אתר האפליקציה
  • ארגון
  • כתובת ה-URL של האתר של הארגון
  • כתובת ה-URL של התנאים וההגבלות
  • כתובת אתר של מדיניות פרטיות
השדות שצריך למלא:
  • שם אפליקציה
  • כתובת אימייל לתמיכה
  • קהל (פנימי או חיצוני)
  • אימייל ליצירת קשר
  • סמל הלוגו
  • כתובת ה-URL של אתר האפליקציה
  • כתובת URL של מדיניות פרטיות
  • כתובת ה-URL של התנאים וההגבלות
  • דומיין מורשה
סוגי אפליקציות המפתח צריך לבחור:
  • שרת
  • לקוח
  • Personal
  • אפליקציית אינטרנט
  • Android
  • תוסף ל-Chrome
  • iOS
  • טלוויזיות
  • אפליקציה לשולחן העבודה
  • פלטפורמת Universal Windows
Client-ID הרישום מתבצע כששומרים את הגדרות האפליקציה רשום בנפרד
סוג הגישה גישת קריאה וכתיבה נשלטת ברמת האפליקציה גישת קריאה וכתיבה נשלטת ברמת ההיקף
כתובות URL נוספות
  • כתובת URL להפניה מחדש: האתר שאליו המשתמשים מופנים אחרי שהם מאשרים את היקפי ההרשאות
  • מקורות מורשים של JavaScript: מקור HTTP שמארח את אפליקציית האינטרנט
  • כתובת URL להפניה מחדש: האתר שאליו המשתמשים מופנים אחרי שהם מאשרים את היקפי ההרשאות

הטמעה של OAuth

אפליקציות של Google Health API תומכות רק בספריות הלקוח של Google OAuth2. יש ספריות לקוח למסגרות פופולריות, ולכן קל יותר להטמיע OAuth 2.0. ההבדלים בין ספריות Google OAuth2 לבין ספריות OAuth2 בקוד פתוח הם:

Fitbit Web API Google Health API
תמיכה בספריית OAuth2 קוד פתוח ספריות לקוח של Google OAuth2
פונקציונליות חוסר עקביות בין הפלטפורמות עקביות בפלטפורמות שונות
כתובת URL של הרשאה https://www.fitbit.com/oauth2/authorize https://accounts.google.com/o/oauth2/v2/auth
כתובת URL לטוקן https://api.fitbit.com/oauth2/token https://oauth2.googleapis.com/token
משך החיים של טוקן גישה 8 שעות שעה אחת
גודל טוקן הגישה ‫1,024 בייטים ‫2048 בייטים
רענון הטוקן אסימוני רענון נוצרים כשמשתמשים בתהליך הענקת קוד הרשאה. אפשר ליצור רק אסימון רענון אחד לכל משתמש. הטוקנים לא פוקעים לעולם ואפשר להשתמש בהם רק פעם אחת. כדי ליצור טוקן רענון, מחרוזת ההרשאה צריכה להכיל את פרמטר השאילתה access_type=offline. אפשר ליצור כמה טוקנים לרענון עבור משתמש יחיד. אסימוני רענון יכולים להיות מבוססים על זמן. הם יפוגו אם לא נעשה בהם שימוש במשך 6 חודשים, אם המשתמש העניק גישה מוגבלת בזמן או אם האפליקציה במצב 'בדיקה'. פרטים נוספים זמינים במאמר בנושא תפוגה של אסימון רענון.
תגובת טוקן תגובת ה-JSON מכילה:
  • טוקן גישה
  • תפוגה של טוקן גישה
  • היקפים
  • סוג הטוקן
  • טוקן רענון
  • מזהה משתמש
תגובת ה-JSON מכילה:
  • טוקן גישה
  • תפוגה של טוקן גישה
  • היקפים
  • סוג הטוקן
  • טוקן רענון

כדי לקבל את מזהה המשתמש, משתמשים בנקודת הקצה users.getIdentity.

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