אתם יכולים לגשת ל Google Cloud מוצרים ולשירותים מהקוד שלכם באמצעות ממשקי Cloud API. ממשקי Cloud API האלה חושפים ממשק JSON REST פשוט שאפשר להפעיל באמצעות ספריות לקוח.
במאמר הזה מוסבר איך לעיין בממשקי API זמינים, להפעיל ממשקי Cloud API ולהוסיף ספריות לקוח ב-Cloud לפרויקט, ואיך להגדיר אימות בהתאם לצרכי הפיתוח.
עיון בממשקי Cloud API
כדי לראות את כל ממשקי Google Cloud API שזמינים בסביבת הפיתוח המשולבת (IDE), מבצעים את השלבים הבאים:
- בוחרים באפשרות כלים > Cloud Code > הוספת ספריות Cloud וניהול של Cloud APIs.
- מרחיבים את העץ של APIs Explorer של Google Cloud כדי לראות את כל ממשקי ה-API הזמינים. ב-Explorer, ממשקי ה-API של Cloud מקובצים לפי קטגוריה. אפשר גם לחפש API ספציפי באמצעות סרגל החיפוש של Search APIs.
- כדי לראות פרטים נוספים על API, כמו הסטטוס שלו, הוראות התקנה ספציפיות לשפה של ספריות הלקוח המתאימות והתיעוד הרלוונטי, לוחצים על ה-API.
הפעלת ממשקי Cloud API
כדי להפעיל במהירות ממשקי Cloud API בפרויקט באמצעות פרטי ה-API, פועלים לפי השלבים הבאים:
- בתצוגת הפרטים של Cloud API, בוחרים פרויקט בענן של Google שרוצים להפעיל בו את Cloud API.
- לוחצים על הלחצן Enable API (הפעלת ה-API).
אחרי שה-API יופעל, תופיע הודעה לאישור השינוי.
הוספת ספריות הלקוח של Cloud
כדי להוסיף ספריות לפרויקט ב-IntelliJ, פועלים לפי השלבים הבאים:
לפרויקטים של Java Maven
- בוחרים באפשרות כלים > Cloud Code > Cloud APIs.
- בוחרים את סוג הספרייה המועדף מבין האפשרויות: ספריית לקוח ב-Google Cloud (מומלץ) או ספריית Java Spring Google Cloud.
- בתפריט הנפתח Module (מודול), בוחרים את המודול שאליו רוצים להוסיף את הספרייה.
- לוחצים על Add Maven Dependency (הוספת תלות של Maven) כדי להוסיף BOM וספריית לקוח לפרויקט.
בתיבת הדו-שיח Manage Google Cloud APIs מוצגות הספריות הנתמכות.
לכל שאר הפרויקטים
- בוחרים באפשרות כלים > Cloud Code > הוספת ספריות Cloud וניהול של Cloud APIs.
- מתקינים את ה-API באמצעות הוראות ההתקנה שמופיעות בדף פרטי ה-API בשפה המועדפת.
בתיבת הדו-שיח Add Google Cloud Libraries מוצגות הספריות הנתמכות.
הגדרת אימות
אחרי שמפעילים את ממשקי ה-API הנדרשים ומוסיפים את ספריות הלקוח הדרושות, צריך להגדיר את האפליקציה כדי שהאימות שלה יצליח. ההגדרה תלויה בסוג הפיתוח ובפלטפורמה שבה אתם מריצים את האפליקציה.
אחרי שתשלימו את שלבי האימות הרלוונטיים, האפליקציה תוכל לבצע אימות ותהיה מוכנה לפריסה.
פיתוח מקומי
minikube
- מוודאים שהגדרתם Application Default Credentials (ADC) על ידי הפעלת הפקודה
gcloud auth application-default login. כך minikube יכול למצוא את ה-ADC שלכם כדי לבצע אימות.
minikube
- מוודאים שהגדרתם Application Default Credentials (ADC) על ידי הפעלת הפקודה
gcloud auth application-default login. הפעולה הזו תאפשר ל-minikube למצוא את ה-ADC שלכם כדי לבצע אימות. - מפעילים את minikube באמצעות
minikube start --addons gcp-auth. הפקודה הזו מפעילה את ה-ADC בפודים. מדריך מפורט לאימות minikube ב-Google Cloud זמין במסמכי gcp-auth של minikube.
אשכול Kubernetes מקומי
- מוודאים שהגדרתם Application Default Credentials (ADC) על ידי הפעלת הפקודה
gcloud auth application-default login. - כדי שספריות הלקוח של Google Cloud יוכלו למצוא את פרטי הכניסה שלכם, צריך לערוך את מניפסטים הפריסה כדי להטמיע את ספריית
gcloudהמקומית בתרמילי Kubernetes. דוגמה להגדרת pod ב-Kubernetes:apiVersion: v1 kind: Pod metadata: name: my-app labels: name: my-app spec: containers: - name: my-app image: gcr.io/google-containers/busybox ports: - containerPort: 8080 volumeMounts: - mountPath: /root/.config/gcloud name: gcloud-volume volumes: - name: gcloud-volume hostPath: path: /path/to/home/.config/gcloud
Cloud Run
- מוודאים שהגדרתם Application Default Credentials (ADC) על ידי הרצת הפקודה
gcloud auth application-default login. כך הסביבה המקומית המדומה של Cloud Run יכולה למצוא את ADC כדי לבצע אימות.
פיתוח מרחוק
Google Kubernetes Engine
- מגדירים את אשכול GKE ואת האפליקציה באמצעות Workload Identity כדי לאמת את שירותי Google Cloud ב-GKE. כך משייכים את חשבון השירות של Kubernetes לחשבון השירות של Google.
- אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להעניק אותם לחשבון השירות של Google שבו אתם משתמשים כדי לפתח את האפליקציה.
במאמר הסבר על תפקידים מפורטת רשימה של סוגי תפקידי IAM ותפקידים מוגדרים מראש שאפשר להעניק לישויות. במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים. - מגדירים את פריסת Kubernetes כך שתפנה לחשבון השירות של Kubernetes על ידי הגדרת השדה
.spec.serviceAccountNameבקובץ ה-YAML של פריסת Kubernetes.
אם אתם עובדים על אפליקציה שנוצרה מתבנית של Cloud Code, הקובץ הזה נמצא בתיקייה kubernetes-manifests.
Cloud Run
- כדי ליצור חשבון שירות ייחודי חדש לפריסת אפליקציית Cloud Run, בדף Service Accounts בוחרים את הפרויקט שבו מאוחסן הסוד.
- לוחצים על יצירת חשבון שירות.
- בתיבת הדו-שיח Create service account, מזינים שם תיאורי לחשבון השירות.
- משנים את מזהה חשבון השירות לערך ייחודי וקל לזיהוי, ואז לוחצים על יצירה.
- אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להקצות אותם, ללחוץ על Continue (המשך) ואז על Done (סיום).
- כדי להוסיף את חשבון השירות להגדרת הפריסה, עוברים להגדרת ההרצה Cloud Run: Deploy, מרחיבים את הקטע Advanced revision settings ומציינים את חשבון השירות בשדה Service Account.
Cloud Run
- מגדירים את אשכול GKE ואת האפליקציה באמצעות Workload Identity כדי לאמת את שירותי Google Cloud ב-GKE. כך משייכים את חשבון השירות של Kubernetes לחשבון השירות של Google.
- אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להעניק אותם לחשבון השירות של Google שבו אתם משתמשים כדי לפתח את האפליקציה.
במאמר הסבר על תפקידים מפורטים סוגי התפקידים ב-IAM ומופיעה רשימה של תפקידים מוגדרים מראש שאפשר להעניק לישויות. - כדי להוסיף את חשבון השירות של Kubernetes להגדרת הפריסה, צריך: לעבור להגדרת ההרצה Cloud Run: Deploy, להרחיב את הקטע Advanced revision settings (הגדרות מתקדמות של עדכון), ואז לציין את חשבון השירות של Kubernetes בשדה Service Account (חשבון שירות).
פיתוח מרחוק עם Secret Manager מופעל
אם אתם מפתחים מרחוק, משתמשים בחשבון שירות לצורך אימות והאפליקציה שלכם משתמשת בסודות, תצטרכו לבצע עוד כמה שלבים כדי להקצות לחשבון השירות שלכם ב-Google את התפקיד שנדרש לגישה לסוד מסוים ב-Secret Manager:
פותחים את החלונית Secret Manager ובוחרים את הסוד שרוצים לגשת אליו בקוד.

עוברים לכרטיסייה Permissions (הרשאות) ולוחצים על edit (עריכה) Edit Permission (עריכת הרשאה) כדי להגדיר את ההרשאות של הסוד. דף ההגדרה של Secret Manager עבור הסוד ייפתח בדפדפן האינטרנט.

במסוף Google Cloud , לוחצים על Show Info Panel ואז על Add principal.
מקצים לחשבון השירות את התפקיד Secret Manager Secret Accessor.
לחשבון השירות יש הרשאה לגשת לסוד הזה.