כדי להגן על המוצרים של הפלטפורמה של מפות Google מפני שימוש לא מורשה, אנחנו מגבילים את הקריאות ל-API רק לאלה שמספקות פרטי כניסה תקינים לאימות. פרטי הכניסה האלה מופיעים בתור מפתח API – מחרוזת אלפאנומרית ייחודית שמקשרת את חשבון החיוב ב-Google לפרויקט ול-API או ל-SDK הספציפיים.
במדריך הזה מוסבר איך ליצור מפתח API לפלטפורמה של מפות Google, להגביל אותו ולהשתמש בו.
לפני שמתחילים
לפני שמתחילים להשתמש ב-Maps Embed API, צריך פרויקט עם חשבון לחיוב שבו מופעל Maps Embed API. מידע נוסף זמין במאמר הגדרה במסוף Cloud.
יצירת מפתחות API
מפתח ה-API הוא מזהה ייחודי שמאמת בקשות המשויכות לפרויקט שלכם לצורכי שימוש וחיובים. צריך להיות לפחות מפתח API אחד שמשויך לפרויקט.
כך יוצרים מפתח API:
המסוף
-
עוברים לדף פלטפורמת מפות Google > פרטי כניסה.
-
בדף Credentials, לוחצים על Create credentials > API key.
תיבת הדו-שיח API key created מציגה את מפתח ה-API החדש שיצרתם. -
לוחצים על סגירה.
מפתח ה-API החדש מופיע בדף Credentials בקטע API keys.
(חשוב לזכור להגביל את מפתח ה-API לפני שמשתמשים בו בסביבת הייצור).
Cloud SDK
gcloud alpha services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
מידע נוסף על Google Cloud SDK, על התקנת Cloud SDK ועל הפקודות הבאות:
הגבלת מפתחות API
Google ממליצה מאוד להגביל את מפתחות ה-API על ידי הגבלת השימוש בהם רק לממשקי ה-API הנחוצים לאפליקציה. הגבלת מפתחות ה-API מוסיפה אבטחה לאפליקציה על ידי הגנה עליה מפני בקשות לא רצויות. מידע נוסף זמין במאמר שיטות מומלצות לאבטחת API.
כדי להגביל מפתח API:
המסוף
-
עוברים לדף פלטפורמת מפות Google > פרטי כניסה.
- בוחרים את מפתח ה-API שרוצים להגדיר לו הגבלה. יופיע הדף של נכס מפתח ה-API.
- בקטע Key restrictions, מגדירים את ההגבלות הבאות:
- הגבלות על אפליקציות:
- כדי לקבל בקשות מרשימת האתרים שסיפקתם, בוחרים באפשרות HTTP referers (web sites) מהרשימה Application restrictions.
- מציינים אתר מפנה אחד או יותר. אפשר להשתמש בתווים כלליים לחיפוש כדי לאשר את כל תתי-הדומיינים (לדוגמה,
https://*.google.com
מקבלת את כל האתרים שמסתיימים ב-.google.com
כשנכנסים אליהם דרך HTTPS). חשוב לזכור: אם מציינים את www.domain.com, הוא פועל כתו כללי לחיפוש www.domain.com/*, ומעניק הרשאה לכל נתיב משנה בשם המארח הזה. יש תמיכה רק בסכמות שלhttps://
ו-http://
למקורות ההפניה. - הגבלות על ממשקי API:
- לוחצים על Restrict key.
- בתפריט הנפתח Select APIs, בוחרים באפשרות Maps Embed API. אם ה-Maps Embed API לא מופיע ברשימה, צריך להפעיל אותו.
- אם בפרויקט שלכם נעשה שימוש ב-Places Library, צריך לבחור גם ב-Places API. באופן דומה, אם בפרויקט שלכם נעשה שימוש בשירותים אחרים ב-JavaScript API (שירות מסלולים, שירות מטריצת מרחקים, שירות גובה ו/או שירות קידוד גאוגרפי), צריך גם להפעיל את ממשק ה-API המתאים ולבחור אותו ברשימה הזו.
- כדי לסיים את השינויים, לוחצים על שמירה.
Cloud SDK
הצגת רשימה של מפתחות קיימים.
gcloud services api-keys list --project="PROJECT"
ביטול ההגבלות הקיימות על מפתח קיים.
gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
להגדיר הגבלות חדשות על מפתח קיים.
gcloud alpha services api-keys update projects/PROJECT/locations/global/keys/KEY_ID \ --api-target=service=maps-embed-backend.googleapis.com --allowed-referrers="referer"
מידע נוסף על Google Cloud SDK, על התקנת Cloud SDK ועל הפקודות הבאות:
הוספת מפתח ה-API לבקשה
חובה לכלול מפתח API בכל בקשה ל-Maps Embed API.
בדוגמה הבאה, מחליפים את הערך YOUR_API_KEY
במפתח ה-API שלכם.
https://www.google.com/maps/embed/v1/MAP_MODE?key=YOUR_API_KEY¶meters