שימוש ב-OAuth

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

כאן מוסבר איך להעביר אסימון OAuth לקריאה ל-Address Validation API בסביבת הפיתוח. להוראות על שימוש ב-OAuth בסביבת ייצור, קראו את המאמר אימות ב-Google.

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

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

מידע על OAuth

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

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

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

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

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

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

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

אם אתם רוצים לנסות את Address Validation 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.

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

curl -X POST -d '{
  "address": {
    "regionCode": "US",
    "locality": "Mountain View",
    "addressLines": ["1600 Amphitheatre Pkwy"]
  }
}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://addressvalidation.googleapis.com/v1:validateAddress"

פתרון בעיות

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