אתם יכולים לגשת ל Google Cloud מוצרים ולשירותים מהקוד שלכם באמצעות ממשקי Cloud API. ממשקי Cloud API האלה חושפים ממשק JSON REST פשוט שאפשר להפעיל באמצעות ספריות לקוח.
במאמר הזה מוסבר איך להפעיל Cloud APIs ולהוסיף ספריות לקוח ב-Cloud לפרויקט.
עיון בממשקי Cloud API
כדי לעיין בכל ממשקי ה-API הזמינים Google Cloud בסביבת הפיתוח המשולבת, פועלים לפי השלבים הבאים:
עוברים אל Tools (כלים) > Google Cloud Code (קוד Google Cloud) > Cloud APIs (ממשקי API של Cloud).
בחלון Manage Google Cloud APIs (ניהול ממשקי API של Google Cloud), ממשקי ה-API של Cloud מקובצים לפי קטגוריה. אפשר גם להשתמש בסרגל החיפוש של ממשקי ה-API של החיפוש כדי למצוא ממשקי API ספציפיים.
כדי לראות פרטים נוספים על API, כמו הסטטוס שלו, הוראות התקנה ספציפיות לשפה של ספריות הלקוח התואמות והתיעוד הרלוונטי, לוחצים על ה-API.
הפעלת ממשקי Cloud API
כדי להפעיל ממשקי Cloud API לפרויקט באמצעות פרטי ה-API, מבצעים את השלבים הבאים:
בתצוגת הפרטים של Cloud API, בוחרים פרויקט ב- Google Cloud שרוצים להפעיל בו את Cloud API.
לוחצים על Enable API.
כשה-API מופעל, מופיעה הודעה לאישור השינוי.
הוספה של ספריות לקוח ב-Cloud
כדי להוסיף ספריות לפרויקט ב-IntelliJ, פועלים לפי השלבים הבאים:
לפרויקטים של Java Maven
- עוברים אל Tools (כלים) > Google Cloud Code > Cloud APIs (ממשקי API של Cloud).
- בוחרים את סוג הספרייה המועדף: ספריית לקוח של Google Cloud (מומלץ לרוב הפרויקטים) או Java Spring Google Cloud (מומלץ אם הפרויקט משתמש ב-Java Spring).
- פועלים לפי שאר ההוראות שבקטע Install Client Library (התקנת ספריית לקוח) בסביבת הפיתוח המשולבת, אם רלוונטי.
- כשמסיימים, לוחצים על סגירה.
בקטע Install Client Library בתיבת הדו-שיח Manage Google Cloud APIs מוצגות הספריות הנתמכות.
לכל שאר הפרויקטים
- עוברים אל Tools (כלים) > Google Cloud Code (Google Cloud Code) > Cloud APIs (ממשקי API של Cloud).
- כדי להתקין את ה-API, פועלים לפי הוראות ההתקנה שמופיעות בדף הפרטים של ה-API בשפה המועדפת.
אם אתם מפתחים אפליקציית Java, אתם צריכים לציין גם את העדפת הספרייה שלכם כספריית הלקוח של Google Cloud (מומלץ) או כ-Java Spring Google Cloud.
- כשמסיימים, לוחצים על סגירה.
בקטע Install Client Library בתיבת הדו-שיח Manage Google Cloud APIs מוצגות הספריות הנתמכות.
שימוש בדוגמאות קוד של API
כדי לחפש דוגמאות קוד לכל API ולהשתמש בהן ב-API Explorer, פועלים לפי השלבים הבאים:
עוברים אל Tools (כלים) > Google Cloud Code (קוד Google Cloud) > Cloud APIs (ממשקי API של Cloud).
כדי לפתוח את התצוגה המפורטת, לוחצים על השם של ה-API.
כדי לראות דוגמאות קוד ל-API, לוחצים על הכרטיסייה דוגמאות קוד.
כדי לסנן את רשימת הדוגמאות, מקלידים טקסט לחיפוש או בוחרים שפת תכנות מהתפריט הנפתח שפה.
מגדירים אימות
אחרי שמפעילים את ממשקי ה-API הנדרשים ומוסיפים את ספריות הלקוח הדרושות, צריך להגדיר את האפליקציה כדי שהאימות שלה יצליח. ההגדרה תלויה בסוג הפיתוח ובפלטפורמה שבה אתם מריצים את האפליקציה.
אחרי שתשלימו את שלבי האימות הרלוונטיים, האפליקציה תוכל לבצע אימות ותהיה מוכנה לפריסה.
פיתוח מקומי
מכונה מקומית
אם נכנסתם ל-Google Cloud דרך סביבת הפיתוח המשולבת (IDE), Cloud Code מוודא שהגדרתם את Application Default Credentials (ADC). אם אתם לא נכנסים באמצעות Cloud Code, מריצים את הפקודה gcloud
auth application-default login באופן ידני.
minikube
- אם נכנסתם ל-Google Cloud דרך סביבת הפיתוח המשולבת (IDE), Cloud Code מוודא שהגדרתם את Application Default Credentials (ADC). אם אתם לא נכנסים באמצעות Cloud Code, מריצים את הפקודה
gcloud auth application-default loginבאופן ידני. - מפעילים את minikube באמצעות
minikube start --addons gcp-auth. הפקודה הזו מפעילה את ה-ADC בפודים. מדריך מפורט לאימות minikube ב-Google Cloud זמין במסמכי gcp-auth של minikube.
אשכולות K8s מקומיים אחרים
- אם נכנסתם ל-Google Cloud דרך סביבת הפיתוח המשולבת (IDE), Cloud Code מוודא שהגדרתם את Application Default Credentials (ADC). אם אתם לא נכנסים באמצעות Cloud Code, מריצים את הפקודה
gcloud auth application-default loginבאופן ידני. - כדי שספריות הלקוח של Google Cloud יוכלו למצוא את פרטי הכניסה שלכם, צריך לערוך את מפרט ה-Pod במניפסטים של ה-Pod או של הפריסה כדי להטמיע את ספריית
gcloudהמקומית ב-Pods של 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
אם נכנסתם ל-Google Cloud דרך סביבת הפיתוח המשולבת (IDE), Cloud Code מוודא שהגדרתם את Application Default Credentials (ADC). אם אתם לא נכנסים באמצעות Cloud Code, מריצים את הפקודה gcloud
auth application-default login באופן ידני.
פיתוח מרחוק
Google Kubernetes Engine
בהתאם להיקף הפרויקט, אפשר לבחור איך לאמת את שירותי Google Cloud ב-GKE:
- (לפיתוח בלבד)
- יוצרים אשכול GKE עם ההגדרות הבאות:
- צריך לוודא שאתם משתמשים בחשבון השירות ש-GKE משתמש בו כברירת מחדל, בחשבון השירות שמשמש כברירת המחדל של Compute Engine, ושההיקפי הגישה מוגדרים למתן גישה מלאה לכל ממשקי ה-API של Cloud (שתי ההגדרות האלה זמינות בקטע Node Pools > Security).
מכיוון שחשבון השירות של Compute Engine משותף לכל עומסי העבודה שנפרסו בצומת, השיטה הזו מקצה הרשאות מעבר לנדרש, ולכן מומלץ להשתמש בה רק לצורכי פיתוח. - מוודאים ש-Workload Identity לא מופעל באשכול (בקטע Cluster (אשכול) > Security (אבטחה)).
- צריך לוודא שאתם משתמשים בחשבון השירות ש-GKE משתמש בו כברירת מחדל, בחשבון השירות שמשמש כברירת המחדל של Compute Engine, ושההיקפי הגישה מוגדרים למתן גישה מלאה לכל ממשקי ה-API של Cloud (שתי ההגדרות האלה זמינות בקטע Node Pools > Security).
- מקצים את התפקידים הנדרשים לחשבון השירות של Compute Engine שמוגדר כברירת מחדל:
- אם אתם מנסים לגשת לסוד, אתם צריכים לפעול לפי השלבים הספציפיים ל-Secret Manager כדי להגדיר את התפקידים הנדרשים בחשבון השירות.
- אם נעשה שימוש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine, יכול להיות שהתפקידים הנכונים ב-IAM כבר הוקצו.
רשימה של סוגי תפקידים ב-IAM ותפקידים מוגדרים מראש שאפשר להעניק לזהויות מופיעה במאמר הסבר על התפקידים.
במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים.
- יוצרים אשכול GKE עם ההגדרות הבאות:
- (מומלץ לשימוש בסביבת ייצור)
- מגדירים את אשכול GKE ואת האפליקציה באמצעות Workload Identity כדי לאמת את שירותי Google Cloud ב-GKE. כך משייכים את חשבון השירות של Kubernetes לחשבון השירות של Google.
- מגדירים את פריסת Kubernetes כך שתפנה לחשבון השירות של Kubernetes על ידי הגדרת השדה
.spec.serviceAccountNameבקובץ ה-YAML של פריסת Kubernetes.
אם אתם עובדים על אפליקציה שנוצרה מתבנית של Cloud Code, הקובץ הזה נמצא בתיקייה kubernetes-manifests. - אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להקצות אותם לחשבון השירות של Google שבו אתם משתמשים כדי לפתח את האפליקציה:
- אם אתם מנסים לגשת לסוד, אתם צריכים לפעול לפי השלבים הספציפיים ל-Secret Manager כדי להגדיר את התפקידים הנדרשים בחשבון השירות.
רשימה של סוגי תפקידים ב-IAM ותפקידים מוגדרים מראש שאפשר להעניק לזהויות מופיעה במאמר הסבר על התפקידים.
במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים.
Cloud Run
-
כדי ליצור חשבון שירות ייחודי חדש לפריסת אפליקציית Cloud Run, בדף Service Accounts בוחרים את הפרויקט שבו מאוחסן הסוד.
- לוחצים על יצירת חשבון שירות.
- בתיבת הדו-שיח Create service account, מזינים שם תיאורי לחשבון השירות.
- משנים את מזהה חשבון השירות לערך ייחודי וקל לזיהוי, ואז לוחצים על יצירה.
- אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להקצות אותם, ללחוץ על Continue (המשך) ואז על Done (סיום).
- כדי להוסיף את חשבון השירות של Kubernetes להגדרת הפריסה, עוברים אל Run (הפעלה) > Edit Configurations (עריכת הגדרות) ומציינים את חשבון השירות בשדה Service Name (שם השירות).
Cloud Run
בהתאם להיקף הפרויקט, אפשר לבחור איך לאמת את שירותי Google Cloud ב-GKE:
- (לפיתוח בלבד)
- יוצרים אשכול GKE עם ההגדרות הבאות:
- צריך לוודא שאתם משתמשים בחשבון השירות ש-GKE משתמש בו כברירת מחדל, בחשבון השירות שמשמש כברירת המחדל של Compute Engine, ושההיקפי הגישה מוגדרים למתן גישה מלאה לכל ממשקי ה-API של Cloud (שתי ההגדרות האלה זמינות בקטע Node Pools > Security).
מכיוון שחשבון השירות של Compute Engine משותף לכל עומסי העבודה שנפרסו בצומת, השיטה הזו מקצה הרשאות מעבר לנדרש, ולכן מומלץ להשתמש בה רק לצורכי פיתוח.
- מוודאים ש-Workload Identity לא מופעל באשכול (בקטע Cluster (אשכול) > Security (אבטחה)).
- צריך לוודא שאתם משתמשים בחשבון השירות ש-GKE משתמש בו כברירת מחדל, בחשבון השירות שמשמש כברירת המחדל של Compute Engine, ושההיקפי הגישה מוגדרים למתן גישה מלאה לכל ממשקי ה-API של Cloud (שתי ההגדרות האלה זמינות בקטע Node Pools > Security).
- מקצים את התפקידים הנדרשים לחשבון השירות של Compute Engine שמוגדר כברירת מחדל:
- אם אתם מנסים לגשת לסוד, אתם צריכים לפעול לפי השלבים הספציפיים ל-Secret Manager כדי להגדיר את התפקידים הנדרשים בחשבון השירות.
- אם נעשה שימוש בחשבון השירות שמוגדר כברירת מחדל ב-Compute Engine, יכול להיות שהתפקידים הנכונים ב-IAM כבר הוקצו.
רשימה של סוגי תפקידים ב-IAM ותפקידים מוגדרים מראש שאפשר להעניק לזהויות מופיעה במאמר הסבר על התפקידים.
במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים.
- יוצרים אשכול GKE עם ההגדרות הבאות:
- (מומלץ לשימוש בסביבת ייצור)
- מגדירים את אשכול GKE ואת האפליקציה באמצעות Workload Identity כדי לאמת את שירותי Google Cloud ב-GKE. כך משייכים את חשבון השירות של Kubernetes לחשבון השירות של Google.
- כדי להוסיף את חשבון השירות של Kubernetes להגדרת הפריסה, עוברים אל Run (הפעלה) > Edit Configurations (עריכת הגדרות) ומציינים את חשבון השירות של Kubernetes בשדה Service Name (שם השירות).
- אם שירות Google Cloud שאליו אתם מנסים לגשת דורש תפקידים נוספים, צריך להקצות אותם לחשבון השירות של Google שבו אתם משתמשים כדי לפתח את האפליקציה:
- אם אתם מנסים לגשת לסוד, אתם צריכים לפעול לפי השלבים הספציפיים ל-Secret Manager כדי להגדיר את התפקידים הנדרשים בחשבון השירות.
רשימה של סוגי תפקידים ב-IAM ותפקידים מוגדרים מראש שאפשר להעניק לזהויות מופיעה במאמר הסבר על התפקידים.
במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים.
פיתוח מרחוק עם הרשאות Secret Manager מופעלות
אם אתם מפתחים מרחוק, משתמשים בחשבון שירות לאימות והאפליקציה שלכם משתמשת בסודות, תצטרכו לבצע עוד כמה שלבים בנוסף להוראות לפיתוח מרחוק. בשלבים האלה מקצים לחשבון השירות של Google את התפקיד שנדרש כדי לגשת לסוד מסוים ב-Secret Manager:
כדי לפתוח את חלון הכלים של Secret Manager, עוברים אל Tools (כלים) > Google Cloud Code (קוד Google Cloud) > Secret Manager (ניהול סודות).
בוחרים את הסוד שרוצים לגשת אליו בקוד.
לוחצים על הכרטיסייה הרשאות ואז מגדירים את ההרשאות של הסוד על ידי לחיצה על עריכה עריכת הרשאה.

המסוף Google Cloud נפתח בחלון חדש בדפדפן האינטרנט, ומוצג בו דף ההגדרה של הסוד ב-Secret Manager.
ב Google Cloud מסוף, לוחצים על הכרטיסייה Permissions ואז על Grant Access.
בשדה New principals, מזינים את חשבון השירות.
בשדה הנפתח Select a role, בוחרים את התפקיד Secret Manager Secret Accessor.
כשמסיימים, לוחצים על שמירה.
לחשבון השירות יש הרשאה לגשת לסוד הזה.