גישה אל Admin API

לפני שמשתמשים או אפליקציות יכולים להשתמש ב-App Engine Admin API, אתם, כGoogle Cloud בעלי הפרויקט, צריכים קודם להפעיל את ה-API בפרויקט ואז ליצור פרטי כניסה שהמשתמשים או האפליקציות יכולים להשתמש בהם כדי לאשר בקשות HTTP.

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

  • יצירת פרויקטים אחרים Google Cloud .
  • יצירת אפליקציות App Engine לכל הפרויקטים החדשים שנוצרו.
  • פריסת גרסאות של אפליקציות באפליקציות App Engine שנוצרו לאחרונה.
  • ניהול משאבים בכל הגרסאות שפרסתם.

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

כדי לבצע את המשימה הבאה, אתם צריכים להיות בעלים של הפרויקטGoogle Cloud שבו אתם רוצים להפעיל את Admin API כדי שמשתמשים ואפליקציות יוכלו לגשת אליו.

הגדרת הפרויקט ויצירת פרטי כניסה

כדי להגדיר את הפרויקט וליצור פרטי כניסה: Google Cloud

  1. מפעילים את App Engine Admin API ואת Cloud Storage API בפרויקט ב-Google Cloud :

    הפעלת שני ממשקי ה-API

  2. יוצרים פרטי כניסה שמשתמשים ואפליקציות יכולים להשתמש בהם כדי לגשת ל-Admin API בפרויקט.

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

דוגמאות

כדי להדגים הרשאה באמצעות OAuth 2.0, בדוגמאות שלמטה נעשה שימוש בתהליך OAuth 2.0 בצד הלקוח כדי לקבל טוקן. הטוקן משמש להרשאת בקשות ל-Admin API באמצעות כלי שורת הפקודה cURL כדי לפרוס את האפליקציה לדוגמה לאפליקציית App Engine של הפרויקט [MY_PROJECT_ID].

דוגמה לאימות

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

בקשת HTTP

כתובת ה-URL הבאה משתמשת במזהה לקוח שנוצר במסוף Google Cloud כדי לבקש טוקן גישה, ואז מפנה את המשתמש ל-URI מורשה שבו האפליקציה מקבלת את הטוקן:

https://accounts.google.com/o/oauth2/v2/auth?
  response_type=token&
  client_id=[MY_CLIENT_ID].apps.googleusercontent.com&
  scope=https://www.googleapis.com/auth/cloud-platform&
  redirect_uri=[MY_REDIRECT_URI]

כאשר:

  • [MY_CLIENT_ID] הוא מזהה לקוח מאחד מפרטי הכניסה שלכם במסוףGoogle Cloud .
  • [MY_REDIRECT_URI] היא כתובת ה-URI המורשית להפניה אוטומטית התואמת מאותם פרטי כניסה בGoogle Cloud מסוף. אם לא מציינים כתובת URI להפניה אוטומטית, צריך לציין כתובת URI מהימנה, לדוגמה https://www.google.com. כתובת ה-URI להפניה מגדירה לאן תגובת ה-HTTP תישלח. בסביבת הייצור, צריך לציין את נקודת הקצה של האימות של האפליקציה, שמטפלת בתגובות מהשרת של OAuth 2.0. למידע נוסף, תוכלו לקרוא את המאמר שימוש ב-OAuth 2.0 לאפליקציות של שרת אינטרנט.

תגובת HTTP

כשהאפליקציה משתמשת בכתובת ה-URL כדי לבקש הרשאה, אסימון הגישה מוחזר בתגובה, למשל:

https://www.google.com/#access_token=[MY_ACCESS_TOKEN]&
  token_type=Bearer&
  expires_in=3600

כאשר [MY_ACCESS_TOKEN] הוא טוקן הגישה שהוחזר שביקשתם.

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

דוגמה לבקשת HTTP באמצעות cURL

הפקודה הבאה של cURL מדגימה איך אפשר להשתמש בטוקן הגישה [MY_ACCESS_TOKEN] כדי לשלוח בקשת HTTP POST. פקודת ה-cURL הזו פורסת את המשאבים שמוגדרים בקובץ ההגדרות app.json בגרסה v1 של השירות default באפליקציה של פרויקט MY_PROJECT_ID.

curl -X POST -T "app.json" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/services/default/versions

המאמרים הבאים