שימוש ב-ARCore API ב-Google Cloud

יש לבחור פלטפורמה:

תכונות ARCore, כמו Geospatial API ו-Cloud anchors, משתמשות ב-ARCore API שמתארח ב-Google Cloud. כשמשתמשים בתכונות האלה, האפליקציה משתמשת בפרטי כניסה כדי לגשת לשירות ARCore API.

במדריך למתחילים נסביר איך להגדיר את האפליקציה כדי שתוכלו לתקשר עם שירות ARCore API שמתארח ב-Google Cloud.

יצירת פרויקט חדש ב-Google Cloud או שימוש בפרויקט קיים

אם יש פרויקט קיים, בוחרים אותו.

כניסה לדף לבחירת הפרויקט

אם עוד אין לכם פרויקט קיים ב-Google Cloud, אפשר ליצור פרויקט כזה.

יצירת פרויקט חדש

הפעלת ARCore API

כדי להשתמש ב-ARCore API, צריך להפעיל אותו בפרויקט.

הפעלה של ARCore API

הגדרה של שיטת הרשאה

אפליקציות ל-iOS יכולות לתקשר עם ה-API של ARCore באמצעות שתי שיטות הרשאה שונות: הרשאה ללא מפתח (Keyless) – השיטה המומלצת, והרשאה של מפתח API:

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

ללא מפתח

ב-ARCore יש תמיכה בהרשאה של קריאות ל-API ב-iOS באמצעות אסימון אינטרנט מסוג JSON. האסימון חייב להיות חתום על ידי חשבון שירות של Google.

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

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

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

    • כל משתמש מקבל אסימון ייחודי.
    • התוקף של האסימונים לא פג באופן מיידי.

יצירת חשבון שירות וחתימה

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

  1. ב-Google Cloud, פותחים את הדף Credentials.
    פרטי כניסה
  2. לוחצים על Create Credentials > Service account.
  3. בקטע Service account details, מזינים שם לחשבון החדש ולוחצים על Create.
  4. בדף ההרשאות של חשבון השירות, לוחצים על התפריט הנפתח בחירת תפקיד. בוחרים באפשרות Service Accounts > Service Account Token Creator (יצירת אסימונים בחשבון שירות) ולוחצים על Continue (המשך).
  5. בדף הענקת גישה למשתמשים לחשבון השירות הזה, לוחצים על 'סיום'.
  6. בדף Credentials, מאתרים את הקטע Service Accounts ולוחצים על שם החשבון שיצרתם.
  7. בדף Service account details, גוללים למטה אל הקטע Keys ולוחצים על Add Key > Create new key.
  8. בוחרים באפשרות JSON כסוג המפתח ולוחצים על יצירה.

    הפעולה הזו תוריד למחשב שלך קובץ JSON שמכיל את המפתח הפרטי. שומרים את קובץ ה-JSON שהורדתם במיקום מאובטח.

יצירת אסימונים בשרת שלכם

כדי ליצור אסימונים (JWT) חדשים בשרת, צריך להשתמש בספריות ה-JWT הרגילות ובקובץ ה-JSON שהורדתם באופן מאובטח מחשבון השירות החדש.

יצירת אסימונים במחשב הפיתוח

כדי ליצור אסימוני JWT במכונת הפיתוח, משתמשים בפקודה oauth2l הבאה:

oauth2l fetch --cache "" --jwt --json $KEYFILE --audience "https://arcore.googleapis.com/"

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

חתימה על האסימון

כדי לחתום על ה-JWT, צריך להשתמש באלגוריתם RS256 ובהצהרות הבאות:

  • iss – כתובת האימייל של חשבון השירות.
  • sub – כתובת האימייל של חשבון השירות.
  • iat – פרק הזמן של מערכת Unix, בשניות, שבו נוצר האסימון.
  • expiat + 3600 (שעה אחת). משך הזמן של מערכת Unix, בשניות, שבו יפוג תוקף האסימון.
  • aud - הקהל. הערך צריך להיות https://arcore.googleapis.com/.

אין צורך בהצהרות לא סטנדרטיות במטען הייעודי (payload) של JWT, אבל יכול להיות שההצהרה uid תהיה שימושית לזיהוי המשתמש המתאים.

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

העברת האסימון בסשן של ARCore

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

כשמעבירים אסימון לסשן, חשוב לשים לב לדברים הבאים:

  • אם השתמשתם במפתח API כדי ליצור את הסשן, המערכת של ARCore תתעלם מהאסימון ותרשום שגיאה.

    אם אתם כבר לא צריכים את מפתח ה-API, תוכלו למחוק אותו במסוף Google Developers ולהסיר אותו מהאפליקציה.

  • ARCore מתעלמת מאסימונים שמכילים רווחים או תווים מיוחדים.

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

מפתח ממשק API

  1. ב-Google Cloud, פותחים את הדף Credentials.
    פרטי כניסה
  2. לוחצים על Create credentials ובתפריט בוחרים באפשרות API key.
    תיבת הדו-שיח של מפתח ה-API שנוצר מציגה את המחרוזת של המפתח החדש שיצרתם.
  3. עיינו במסמכי התיעוד בנושא הגבלות על מפתחות API כדי לאבטח את מפתח ה-API.

האפליקציה שלך מוגדרת עכשיו לשימוש במפתחות API.

המאמרים הבאים

אחרי שמגדירים הרשאה, כדאי לבדוק את התכונות הבאות של ARCore שמשתמשות בה: