שימוש ב-OAuth

מפתחים באזור הכלכלי האירופי (EEA)

ממשק Solar API תומך בשימוש ב-OAuth 2.0 לאימות. ‫Google תומכת בתרחישים נפוצים של OAuth 2.0, כמו אלה של שרת אינטרנט.

במאמר הזה מוסבר איך להעביר אסימון OAuth לקריאה ל-Solar API בסביבת הפיתוח. הוראות לשימוש ב-OAuth בסביבת ייצור זמינות במאמר אימות ב-Google.

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

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

מידע על OAuth

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

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

אפשר גם להשתמש ב-Solar API כחלק מאפליקציה לנייד ל-Android או ל-iOS. מידע כללי על שימוש ב-OAuth עם Solar API, כולל מידע על ניהול אסימוני גישה לסביבות פריסה שונות, זמין במאמר שימוש ב-OAuth 2.0 לגישה ל-Google APIs.

מידע על היקפי הרשאות OAuth

כדי להשתמש ב-OAuth עם Solar API, צריך להקצות לטוקן OAuth את ההיקף:

  • https://www.googleapis.com/auth/cloud-platform

דוגמה: התנסות בקריאות ל-API ל-REST בסביבת הפיתוח המקומית

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

בדוגמה הזו נסביר איך להשתמש באסימון OAuth שסופק על ידי Application Default Credentials‏ (ADC) כדי לבצע את הקריאה. במאמר אימות באמצעות ספריות לקוח תוכלו ללמוד איך משתמשים ב-ADC כדי לקרוא ל-Google APIs באמצעות ספריות לקוח.

דרישות מוקדמות

כדי שתוכלו לשלוח בקשת REST באמצעות ADC, אתם צריכים קודם להשתמש ב-Google Cloud CLI כדי לספק ל-ADC את פרטי הכניסה:

  1. אם עדיין לא עשיתם זאת, צרו פרויקט והפעילו את החיוב לפי השלבים במאמר הגדרה במסוף Google Cloud.
  2. מתקינים ומפעילים את ה-CLI של gcloud.
  3. מריצים את הפקודה gcloud הבאה במחשב המקומי כדי ליצור את קובץ פרטי הכניסה:

    gcloud auth application-default login
  4. מסך התחברות יוצג לפניכם. אחרי שמתחברים, פרטי הכניסה נשמרים בקובץ פרטי הכניסה המקומי שמשמש את ADC.

מידע נוסף זמין בקטע סביבת פיתוח מקומית במאמר העברת פרטי כניסה ל-Application Default Credentials.

שליחת בקשת REST

בדוגמה הזו, מעבירים שתי כותרות בקשה:

  • מעבירים את אסימון ה-OAuth בכותרת Authorization באמצעות הפקודה הבאה ליצירת האסימון:

    gcloud auth application-default print-access-token

    הטוקן שמוחזר הוא בהיקף של https://www.googleapis.com/auth/cloud-platform.

  • מעבירים את המזהה או השם של הפרויקט ב-Google Cloud שמופעל בו חיוב בכותרת X-Goog-User-Project. מידע נוסף זמין במאמר בנושא הגדרה במסוף Cloud.

בדוגמה הבאה מתבצעת קריאה ל-Solar API באמצעות אסימון OAuth:

curl -X GET \
-H 'X-Goog-User-Project: PROJECT_NUMBER_OR_ID' \
-H "Authorization: Bearer $TOKEN" \
"https://solar.googleapis.com/v1/dataLayers:get?location.latitude=37.4450&location.longitude=-122.1390&radius_meters=100&required_quality=HIGH"

פתרון בעיות

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