Workload Identity

איחוד שירותי אימות הזהות של עומסי עבודה ב-GKE‏ (WIF) הוא מנגנון שמאפשר לעומסי העבודה באשכול שלכם לגשת למשאבי ענן חיצוניים באמצעות חשבונות שירות של Kubernetes. הדרך המומלצת לאפליקציות שפועלות באשכולות GKE מצורפים לגשת לשירותי Google Cloud היא באמצעות WIF. כשרושמים את האשכול, ה-API של אשכולות מצורפים ב-GKE יוצר את כל התשתית שנדרשת ל-WIF, עם תמיכה באשכולות שמשתמשים במונפקים ציבוריים או פרטיים של OIDC.

כל רכיבי GKE שמתחברים בחזרה אל Google Cloud, כמו Connect וסוכני טלמטריה, משתמשים באיחוד זהויות של עומסי עבודה ל-GKE.

חשבונות שירות של Kubernetes ואיחוד זהויות של עומסי עבודה ל-GKE

כשקבוצת Pod פועלת, היא משתמשת בחשבון שירות של Kubernetes כדי לאשר את הגישה שלה למשאבים שמתארחים באשכול שלה. באמצעות WIF, ‏ ה-Pod יכול להשתמש באותו חשבון שירות של Kubernetes ‏ (KSA) כדי לקבל אסימון לטווח קצר לגישה למשאבים שמתארחים מחוץ לאשכול.

כדי להשתמש ב-WIF, צריך ליצור יחסי אמון בין ספק הזהויות OIDC בתוך האשכול לבין ספק המשאבים החיצוני, כמו Google Cloud IAM. כשרושמים אשכול מצורף, תהליך הרישום יוצר באופן אוטומטי את יחסי האמון האלה על ידי הוספת שירות ה-OIDC של האשכול למאגר ברירת המחדל של זהויות עומסי העבודה שקשור לפרויקט. Google Cloud

מאגר הזהויות של עומסי העבודה הוא מאגר ספקי הזהויות המהימנים של פרויקט Google, והשם שלו הוא PROJECT_ID.svc.id.goog, כאשר PROJECT_ID הוא מזהה פרויקט Google שמשויך לאשכול המצורף.

אתם יכולים להשתמש במדיניות IAM רגילה Google Cloud כדי לשלוט בגישה של חשבונות שירות ב-Kubernetes לשירותים Google Cloud . חשבונות משתמשים של שירות Kubernetes הם הייצוג של KSA במאגר הזהויות של עומסי העבודה. הפורמט שלהן הוא:

serviceAccount:WORKLOAD_IDENTITY_POOL_NAME[KSA_NAMESPACE/KSA_NAME]

כדי להעניק תפקיד לחשבון שירות ב-Kubernetes, משתמשים בפקודה הבאה:

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member="serviceAccount:PROJECT_ID.svc.id.goog[KSA_NAMESPACE/KSA_NAME]" \
  --role=IAM_ROLE

מחליפים את:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • KSA_NAMESPACE: מרחב השמות של האשכול שחשבון השירות הזה נמצא בו
  • KSA_NAME: השם של חשבון השירות ב-Kubernetes שרוצים להעניק לו הרשאות
  • IAM_ROLE: Google Cloud התפקיד שרוצים לתת למפתח ה-KSA הזה