שימוש במפתחות API עם Directions API (גרסה קודמת)

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

איך יוצרים, מגבילים ומשתמשים במפתח API ב-Google Maps Platform.

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

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

יצירת מפתחות API

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

המסוף

  1. נכנסים לדף Google Maps Platform > Keys & Credentials.

    כניסה לדף Keys & Credentials

  2. אם מתבקשים, בוחרים את הפרויקט.
  3. מבצעים אחת מהפעולות האלה:

    • יצירת מפתח חדש:

      1. לוחצים על Create credentials > מפתח API.
      2. בחלונית יצירת מפתח API, פותחים את הרשימה בחירת הגבלות API.
      3. מבטלים את הבחירה בכל ממשקי ה-API שהמפתח הזה לא צריך, ומוודאים שהאפשרות Directions API נשארת מסומנת.
      4. לוחצים על יצירה. בחלונית מוצג מפתח ה-API החדש.
    • שימוש במפתח קיים:

      1. לוחצים על שם המפתח.
      2. ברשימה Select API restrictions, בוחרים באפשרות Directions API.
      3. לוחצים על שמירה.

    בחירת API כאן לא מפעילה אותו. מוודאים ש-Directions API מופעל בדף API Library שלו.

  4. כדי לראות את מחרוזת המפתח מאוחר יותר, עוברים לדף Keys & Credentials ולוחצים על Show key ליד המפתח.

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

gcloud

בפקודות הבאות, מחליפים את PROJECT_ID במזהה הפרויקט.

  • יצירת מפתח חדש: מריצים את הפקודה הבאה ומחליפים את DISPLAY_NAME בשם של המפתח.

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=directions-backend.googleapis.com

    מידע נוסף על Google Cloud SDK, התקנת Cloud SDK והפקודות הבאות:

  • שימוש במפתח קיים: מריצים את הפקודה הבאה ומחליפים את KEY_ID במזהה המפתח. הדגל --append שומר על ממשקי ה-API שהמפתח כבר מאפשר. בלעדיו, הפקודה מחליפה אותם.

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=directions-backend.googleapis.com

    מידע נוסף על Google Cloud SDK, התקנת Cloud SDK והפקודות הבאות:

    מזהה המפתח הוא לא מחרוזת המפתח או השם המוצג. כדי למצוא אותו, מריצים את הפקודה gcloud services api-keys list --project="PROJECT_ID". המזהה הוא החלק האחרון בשדה name: projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.

כדי לראות את מחרוזת המפתח, מריצים את הפקודה gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID".

הגבלת מפתחות API

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

כדי להגביל מפתח API:

המסוף

  1. נכנסים לדף Google Maps Platform > Keys & Credentials.

    כניסה לדף Keys & Credentials

  2. בוחרים את מפתח ה-API שרוצים להגביל. דף המאפיינים של מפתח ה-API מופיע.
  3. בקטע Key restrictions, מגדירים את ההגבלות הבאות:
    • הגבלות על אפליקציות:
      1. כדי לקבל בקשות מרשימת כתובות ה-IP של שרתי האינטרנט שאתם מספקים, בוחרים באפשרות IP addresses בקטע Application restrictions. מציינים כתובת IPv4 או IPv6 אחת או יותר, או רשת משנה באמצעות סימון CIDR. כתובות ה-IP חייבות להתאים לכתובת המקור ששרתי Google Maps Platform מזהים. אם אתם משתמשים בתרגום כתובות רשת (NAT), בדרך כלל הכתובת הזו תתאים לכתובת ה-IP הציבורית של המכונה.
    • הגבלות על ממשקי API:
      1. בקטע Select API restrictions, מוודאים שהאפשרות Directions API מסומנת. אם הוא לא מופיע ברשימה, צריך להפעיל אותו.
  4. כדי לשמור את השינויים, לוחצים על שמירה.

gcloud

מריצים את הפקודה הבאה: מחליפים את KEY_ID במזהה המפתח ואת PROJECT_ID במזהה הפרויקט. כדי למצוא את מזהה המפתח, מריצים את הפקודה gcloud services api-keys list --project="PROJECT_ID". המזהה הוא החלק האחרון בשדה name.

gcloud services api-keys update KEY_ID \
    --project="PROJECT_ID" \
    --append \
    --api-target=service=directions-backend.googleapis.com \
    --allowed-ips="IP_ADDRESS"

מידע נוסף על Google Cloud SDK, התקנת Cloud SDK והפקודות הבאות:

הוספת מפתח ה-API לבקשה

בכל בקשה ל-Directions API (דור קודם) צריך לכלול מפתח API. בדוגמה הבאה, מחליפים את YOUR_API_KEY במפתח ה-API שלכם:

https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key=YOUR_API_KEY

בבקשות שמשתמשות במפתח API, צריך להשתמש ב-HTTPS.