מבוא למפתחות API
יש שני סוגים של מפתחות API: מפתחות API רגילים ומפתחות הרשאה. שני המפתחות מאפשרים לכם לשייך בקשה לפרויקט למטרות חיוב וניהול מכסות. עם זאת, יש ביניהם הבדל:
מפתח API רגיל לא מאמת חשבון משתמש.
מפתח הרשאה מאמת כחשבון שירות. הוא פועל באופן דומה לאסימון גישה לטווח ארוך.
הדף Credentials במסוףGoogle Cloud מוודא שנוצר סוג נכון של מפתח API עבור API שנבחר.
מפתחות API רגילים
מפתחות API רגילים מאפשרים לשייך בקשה לפרויקט לצורכי חיוב ומכסה. כשמשתמשים במפתח API רגיל (מפתח API שלא קושר לחשבון שירות) כדי לגשת ל-API, מפתח ה-API לא מזהה חשבון משתמש. בלי חשבון משתמש, הבקשה לא יכולה להשתמש בניהול זהויות והרשאות גישה (IAM) כדי לבדוק אם למבצע הקריאה יש הרשאה לבצע את הפעולה המבוקשת.
אפשר להשתמש במפתחות API רגילים עם כל API שמקבל מפתחות API, אלא אם נוספו למפתח הגבלות על API. אי אפשר להשתמש במפתחות API רגילים בשירותים שלא תומכים במפתחות API, כולל במצב מהיר.
מפתחות הרשאה
מפתחות הרשאה הם מפתחות API שמקושרים לחשבון שירות. כשמשתמשים במפתח הרשאה כדי לגשת ל-API, הבקשה מעובדת כאילו השתמשתם בחשבון השירות המקושר כדי לשלוח את הבקשה.
ממשקי API שתומכים במפתחות הרשאה כוללים את Vertex AI (aiplatform.googleapis.com) ואת Gemini API (generativelanguage.googleapis.com).
כשמשתמשים במפתחות הרשאה, חשוב לזכור את הנקודות הבאות:
בקשות שאומתו באמצעות מפתחות הרשאה לא מתועדות במדדי השימוש בחשבון השירות.
אילוץ ברירת מחדל של מדיניות הארגון מונע קישור מפתחות לחשבון שירות. כדי לשנות את זה, אפשר לעיין במאמר בנושא הפעלת מפתחות הרשאה.
רכיבים של מפתח API
מפתח API כולל את הרכיבים הבאים, שתוכלו להשתמש בהם כדי לנהל את המפתח ולהשתמש בו:
- String
- המחרוזת של מפתח API היא מחרוזת מוצפנת, כמו
AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. כשמשתמשים במפתח API כדי לגשת לממשק API, משתמשים תמיד במחרוזת של המפתח. למפתחות API לא משויך קובץ JSON. - מזהה
- בכלי הניהול נעשה שימוש במזהה של מפתח API כדי לזהות את המפתח באופן ייחודי. Google Cloud אי אפשר להשתמש במזהה המפתח כדי לגשת לממשקי API. תוכלו לאתר את מזהה המפתח בכתובת ה-URL של דף העריכה של המפתח במסוף Google Cloud . אפשר לאתר את מזהה המפתח גם כשרושמים את המפתחות שבפרויקט באמצעות Google Cloud CLI.
- השם המוצג
- השם המוצג הוא שם תיאורי אופציונלי למפתח, ואפשר להגדיר אותו כשיוצרים את המפתח וכשמעדכנים אותו.
- חשבון שירות שמוגדר כברירת מחדל
- מפתחות הרשאה כוללים את כתובת האימייל של חשבון השירות.
לפני שמתחילים
כדי להשתמש בדוגמאות בדף הזה, צריך לבצע את המשימות הבאות.
מגדירים אימות
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud
gcloud
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
C++
כדי להשתמש בדוגמאות של C++ שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
אם אתם משתמשים במעטפת מקומית, אתם צריכים ליצור פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Java
כדי להשתמש בדוגמאות של Java שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
אם אתם משתמשים במעטפת מקומית, אתם צריכים ליצור פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Python
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
אם אתם משתמשים במעטפת מקומית, אתם צריכים ליצור פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לניהול מפתחות API, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
- API Keys Admin (
roles/serviceusage.apiKeysAdmin) -
כדי להגביל מפתח API ל-API ספציפיים, משתמשים ב Google Cloud מסוף:
הצגת נתוני שימוש בשירות (
roles/serviceusage.serviceUsageViewer)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הפעלת מפתחות הרשאה
לפני שיוצרים מפתח הרשאה, צריך לבצע אחת מהפעולות הבאות:
מעדכנים את האילוץ
constraints/iam.managed.disableServiceAccountApiKeyCreationשל מדיניות הארגון כדי להגביל את השירותים שמשתמשים יכולים ליצור עבורם מפתחות הרשאה. כשיוצרים מפתח הרשאה, המשתמשים צריכים להוסיף הגבלת API שתואמת לשירות שמותר על ידי האילוץ.משביתים את האילוץ של מדיניות הארגון
constraints/iam.managed.disableServiceAccountApiKeyCreation.
כדי לשנות את מדיניות הארגון צריך משאב מסוג Organization. אין תמיכה בפרויקטים שלא משויכים לארגון.
כדי לשנות את הגבלת המדיניות, פועלים לפי ההוראות הבאות.
המסוף
נכנסים לדף Organization policies במסוף Google Cloud .
עוברים לארגון, לתיקייה או לפרויקט שרוצים לשנות את המדיניות שלהם.
בתיבה Filter, מזינים
Block serviceולוחצים על שם המדיניות Block service account API key bindings.לוחצים על ניהול המדיניות.
בקטע Policy source, בוחרים באפשרות Override parent's policy.
לוחצים על Add a rule.
כדי להשבית את ההגבלה, מעבירים את האכיפה למצב מושבת.
כדי להוסיף שירות לרשימת האתרים המותרים, מגדירים את האכיפה למופעלת.
לוחצים על עריכה.
בקטע סוג הערך, בוחרים באפשרות בהגדרת המשתמש.
מזינים את השירות שרוצים לאפשר יצירת מפתחות API עבורו.
לוחצים על סיום.
אופציונלי: לוחצים על בדיקת שינויים כדי לקבל תובנות לגבי האופן שבו המדיניות המוצעת עלולה לגרום להפרות של דרישות התאימות או לשיבושים.
לוחצים על הגדרת מדיניות.
gcloud
כדי להוסיף שירות לרשימת השירותים המותרים:
יוצרים קובץ בשם
spec.yamlעם התוכן הבא:name: SCOPE/SCOPE_ID/policies/iam.managed.disableServiceAccountApiKeyCreation spec: rules: - enforce: true parameters: allowedServices: - SERVICE_NAMEמספקים את הערכים הבאים:
SCOPE:organizations,foldersאוprojects.
SCOPE_ID: בהתאם ל-SCOPE, המזהה של הארגון, התיקייה או הפרויקט שאליהם חלה מדיניות הארגון.
SERVICE_NAME: השם של השירות שרוצים לאפשר, לדוגמהcompute.googleapis.com.
מריצים את פקודת
gcloudהבאה כדי לאפשר קישור של מפתחות API לחשבונות שירות בשירות שצוין:gcloud org-policies set-policy spec.yaml \ --update-mask spec
כדי להשבית את האילוץ:
יוצרים קובץ בשם
spec.yamlעם התוכן הבא:name: SCOPE/SCOPE_ID/policies/iam.managed.disableServiceAccountApiKeyCreation spec: rules: - enforce: falseמריצים את הפקודה הבאה
gcloudכדי להשבית את האילוץ:gcloud org-policies set-policy spec.yaml \ --update-mask spec
יצירה של מפתח API
יש כמה דרכים ליצור מפתח API:
המסוף
נכנסים לדף Credentials במסוף Google Cloud :
לוחצים על Create credentials ובתפריט בוחרים באפשרות API key.
מוסיפים לפחות הגבלה אחת על מפתח API. מידע נוסף זמין במאמר בנושא החלת הגבלות על מפתחות API.
אופציונלי: כדי לקשר את מפתח ה-API לחשבון שירות וליצור מפתח הרשאה, מסמנים את התיבה Authenticate API calls through a service account ולוחצים על Select a service account כדי לבחור את חשבון השירות שרוצים לקשר למפתח.
מידע נוסף זמין במאמר בנושא מפתחות הרשאה.
לוחצים על יצירה. בתיבת הדו-שיח API key created מוצגת המחרוזת של המפתח החדש שיצרתם.
gcloud
משתמשים בפקודה gcloud services api-keys create כדי ליצור מפתח API.
gcloud services api-keys create \
--display-name=DISPLAY_NAME \
--api-target=service=SERVICE_1 \
--api-target=service=SERVICE_2
מחליפים את הערכים הבאים:
DISPLAY_NAME: שם תיאורי למפתח.SERVICE_1,SERVICE_2: שמות השירותים של ממשקי ה-API שאפשר לגשת אליהם באמצעות המפתח.תוכלו למצוא את שם השירות על ידי חיפוש ה-API במרכז הבקרה של ה-API. השמות של שירותים הם מחרוזות כמו
bigquery.googleapis.com.כדי לקשר את מפתח ה-API לחשבון שירות וליצור מפתח הרשאה לשירותים כמו Vertex AI ו-Gemini API, משתמשים ב-
gcloud betaבמקום זאת, עם הדגל--service-account:gcloud beta services api-keys create \ --display-name=DISPLAY_NAME \ --api-target=service=SERVICE_1 \ --api-target=service=SERVICE_2 \ --service-account=SERVICE_ACCOUNT_EMAIL_ADDRESSמידע נוסף זמין במאמר בנושא מפתחות הרשאה.
C++
כדי להריץ את הדוגמה הזו, צריך להתקין את ספריית הלקוח של מפתחות API.
Java
כדי להריץ את הדוגמה הזו, צריך להתקין את ספריית הלקוח google-cloud-apikeys.
Python
כדי להריץ את הדוגמה הזו, צריך להתקין את ספריית הלקוח של מפתחות API.
REST
משתמשים ב-method keys.create כדי ליצור מפתח API. בעקבות הבקשה הזו מתקבלת פעולה ממושכת, וצריך לדגום את הפעולה כדי לאתר את המידע על המפתח החדש.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d '{
"displayName" : "DISPLAY_NAME",
"restrictions" : {
"apiTargets": [
{
"service": "SERVICE_1"
},
{
"service" : "SERVICE_2"
},
]
}
}' \
"https://apikeys.googleapis.com/v2/projects/PROJECT_ID/locations/global/keys"
מחליפים את הערכים הבאים:
DISPLAY_NAME: שם תיאורי למפתח.
PROJECT_ID: השם או המזהה של הפרויקט ב- Google Cloud .SERVICE_1,SERVICE_2: שמות השירותים של ממשקי ה-API שאפשר לגשת אליהם באמצעות המפתח.
תוכלו למצוא את שם השירות על ידי חיפוש ה-API במרכז הבקרה של ה-API. השמות של שירותים הם מחרוזות כמו bigquery.googleapis.com.
אופציונלי: כדי לקשר את מפתח ה-API לחשבון שירות וליצור במקומו מפתח הרשאה, משתמשים בפקודה הבאה:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d '{
"displayName" : "DISPLAY_NAME",
"restrictions" : {
"apiTargets": [
{
"service": "SERVICE_1"
},
{
"service" : "SERVICE_2"
},
]
},
"serviceAccountEmail" : "SERVICE_ACCOUNT_EMAIL_ADDRESS"
}' \
"https://apikeys.googleapis.com/v2/projects/PROJECT_ID/locations/global/keys"
מידע נוסף זמין במאמר בנושא מפתחות הרשאה.
מידע נוסף על יצירת מפתחות API באמצעות API ל-REST מופיע במאמר יצירת מפתח API במאמרי העזרה בנושא API של מפתחות API.
החלת הגבלות על מפתחות API
מפתחות API ללא הגבלות לא מאובטחים. כדי לצמצם את סיכוני האבטחה, אפשר להגביל את מפתחות ה-API בדרכים הבאות:
הגבלות על ממשקי API: הגבלת מפתח API כך שאפשר להשתמש בו רק עם קבוצה ספציפית של ממשקי API. אפשר להשתמש במפתחות API ללא הגבלות על API עם כל ממשקי ה-API שמקבלים מפתחות שנוצרו על ידי Google Cloud.
הגבלות על אפליקציות: הגבלת מפתח API כך שניתן יהיה להשתמש בו רק באתרים, בכתובות IP או באפליקציות ספציפיות. אפשר להשתמש במפתחות API ללא הגבלות על אפליקציות מכל מקום.
מומלץ להגדיר גם הגבלות על ממשקי API וגם הגבלות על אפליקציות.
כדי ליצור מפתח API, צריך להוסיף לפחות הגבלה אחת על ה-API במסוף Google Cloud . עם זאת, כשיוצרים מפתחות API באמצעות ה-CLI של gcloud או ה-API ל-REST, המפתחות לא מוגבלים אלא אם מציינים הגבלה. כדי לעשות את זה, מוסיפים את ההגבלות הבאות כשיוצרים מפתח API:
gcloud CLI: הדגל
--api-target, יחד עם ההגבלות על ה-API שרוצים להוסיף.REST: האובייקט
restrictionsבגוף הבקשה, שמכיל מערךapiTargetsשמציין את ההגבלות שרוצים להוסיף.
הוספת הגבלות על ממשקי API
ההגבלות על ממשקי API מציינות לאילו ממשקי API אפשר לקרוא באמצעות מפתח ה-API.
אפשר להוסיף הגבלות API באמצעות אחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Credentials במסוף Google Cloud :
לוחצים על השם של מפתח ה-API שרוצים להגביל.
בקטע API restrictions, לוחצים על Restrict key.
בוחרים את כל ממשקי ה-API שאפשר לגשת אליהם באמצעות מפתח ה-API שלכם.
כדי לשמור את השינויים ולחזור לרשימה של מפתחות ה-API, לוחצים על Save.
gcloud
מאתרים את המזהה של המפתח שרוצים להגביל.
המזהה הוא לא השם המוצג או מחרוזת המפתח. כדי לאתר אותו, בעזרת הפקודה
gcloud services api-keys listתוכלו להציג את רשימת המפתחות בפרויקט.משתמשים בפקודה
gcloud services api-keys updateכדי לציין את השירותים שאליהם אפשר לגשת באמצעות מפתח API.מחליפים את הערכים הבאים:
KEY_ID: המזהה של המפתח שרוצים להגביל.SERVICE_1,SERVICE_2: שמות השירותים של ממשקי ה-API שאפשר לגשת אליהם באמצעות המפתח.עליכם לפרט בפקודת העדכון את כל שמות השירותים, והם יחליפו את כל השירותים הקיימים במפתח.
תוכלו למצוא את שם השירות על ידי חיפוש ה-API במרכז הבקרה של ה-API. השמות של השירותים הם מחרוזות כמו
bigquery.googleapis.com.gcloud services api-keys update KEY_ID \ --api-target=service=SERVICE_1 --api-target=service=SERVICE_2
Java
כדי להריץ את הדוגמה הזו, צריך להתקין את ספריית הלקוח google-cloud-apikeys.
Python
כדי להריץ את הדוגמה הזו, צריך להתקין את ספריית הלקוח של מפתחות API.
REST
מאתרים את המזהה של המפתח שרוצים להגביל.
המזהה הוא לא השם המוצג או מחרוזת המפתח. אפשר לאתר אותו באמצעות method keys.list. המזהה מופיע בשדה
uidשל התשובה.מחליפים את
PROJECT_IDבמזהה הפרויקט או בשם הפרויקט ב- Google Cloud .curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://apikeys.googleapis.com/v2/projects/PROJECT_ID/locations/global/keys/"
משתמשים ב-method keys.patch כדי לציין את השירותים שאפשר לגשת אליהם באמצעות מפתח API.
בעקבות הבקשה הזו מתקבלת פעולה ממושכת, וצריך לדגום את הפעולה כדי לדעת מתי היא הושלמה ומה הסטטוס שלה.
מחליפים את הערכים הבאים:
SERVICE_1,SERVICE_2: שמות השירותים של ממשקי ה-API שאפשר לגשת אליהם באמצעות המפתח.עליכם לפרט בבקשה את כל שמות השירותים, והם יחליפו את כל השירותים הקיימים במפתח.
תוכלו למצוא את שם השירות על ידי חיפוש ה-API במרכז הבקרה של ה-API. השמות של השירותים הם מחרוזות כמו
bigquery.googleapis.com.
PROJECT_ID: השם או המזהה של הפרויקט ב- Google Cloud .KEY_ID: המזהה של המפתח שרוצים להגביל.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "restrictions" : { "apiTargets": [ { "service": "SERVICE_1" }, { "service" : "SERVICE_2" }, ] } }' \ "https://apikeys.googleapis.com/v2/projects/PROJECT_ID/locations/global/keys/KEY_ID?updateMask=restrictions"
למידע נוסף על הוספת הגבלות על ממשקי API למפתח באמצעות API ל-REST, ראו הוספת הגבלות על ממשקי API במאמרי העזרה בנושא API של מפתחות API.
הוספת הגבלות על אפליקציות
הגבלות על אפליקציות מציינות אילו כתובות IP, אפליקציות ואתרים יכולים להשתמש במפתח API.
ניתן להחיל רק סוג אחד של הגבלה על אפליקציות בכל פעם. מומלץ לבחור את סוג ההגבלה בהתאם לסוג האפליקציה:
| אפשרות | סוג האפליקציה | הערות |
|---|---|---|
| אתרים | אפליקציות אינטרנט | קובעת באילו אתרים אפשר להשתמש במפתח. |
| כתובות IP | אפליקציות שנקראו על ידי שרתים ספציפיים | קובעת באילו שרתים או משימות cron אפשר להשתמש במפתח. זו ההגבלה היחידה שזמינה למפתחות הרשאה. |
| אפליקציות ל-Android | אפליקציות ל-Android | קובעת באיזו אפליקציית Android אפשר להשתמש במפתח. |
| אפליקציות ל-iOS | אפליקציות ל-iOS | קובעת באילו חבילות ל-iOS אפשר להשתמש במפתח. |
Websites
כדי לקבוע באילו אתרים אפשר להשתמש במפתחות ה-API, אפשר להוסיף גורם מפנה אחד או יותר מסוג HTTP כהגבלות על אתרים. לדוגמה, אם מוסיפים את https://example.com להגבלות על אתרים של מפתח API, רק קריאות מ-https://example.com יכולות להשתמש במפתח ה-API הזה.
יש תמיכה מוגבלת בתווים כלליים בכתובות ה-HTTP של האתרים שמוגדרות בהגבלות על אתרים.
אפשר להחליף תת-דומיין או נתיב בתו כללי לחיפוש (*), אבל אי אפשר להוסיף תו כללי לחיפוש באמצע כתובת ה-URL. לדוגמה, ההגבלה *.example.com תקינה, והיא מקבלת את כל האתרים שמסתיימים ב-.example.com.
עם זאת, ההגבלה mysubdomain*.example.com לא תקינה.
אפשר לכלול מספרי יציאות בהגבלות של אתרים. אם כוללים מספר יציאה, מתבצעת התאמה רק לבקשות שנשלחות באמצעות אותה היציאה. אם לא מציינים מספר יציאה, מתבצעת התאמה לבקשות שנשלחות מכל מספרי היציאות.
בטבלה הבאה מוצגים תרחישים לדוגמה והגבלות לדפדפנים:
| תרחיש | הגבלות |
|---|---|
| הרשאה של כתובת URL ספציפית | צריך להוסיף כתובת URL עם נתיב מדויק, לדוגמה:www.example.com/pathwww.example.com/path/pathבדפדפנים מסוימים חלה מדיניות לגורם מפנה ששולחת רק את כתובת ה-URL המקורית של בקשות ממקורות שונים. משתמשים בדפדפנים האלה לא יכולים להשתמש במפתחות עם מגבלות לכתובות URL ספציפיות לדף. |
| הרשאה של כל כתובת URL באתר שלכם | צריך להגדיר שתי כתובות URL ברשימה allowedReferers.
|
| הרשאה של כל כתובת URL בתת-דומיין יחיד או בדומיין ללא קידומת |
צריך להגדיר שתי כתובות URL ברשימה
|
אפשר להגביל את מפתח ה-API לאתרים ספציפיים באמצעות אחת מהאפשרויות הבאות:
המסוף
נכנסים לדף Credentials במסוף Google Cloud :
לוחצים על השם של מפתח ה-API שרוצים להגביל.
בקטע Application restrictions, בוחרים באפשרות Websites.
לכל הגבלה שרוצים להוסיף, לוחצים על Add, מזינים את ההגבלה ולוחצים על Done.
כדי לשמור את השינויים ולחזור לרשימה של מפתחות ה-API, לוחצים על Save.
gcloud
מאתרים את המזהה של המפתח שרוצים להגביל.
המזהה הוא לא השם המוצג או מחרוזת המפתח. כדי לאתר אותו, בעזרת הפקודה
gcloud services api-keys listתוכלו להציג את רשימת המפתחות בפרויקט.