סקירה כללית על Application Default Credentials

במאמר הזה נתאר איפה מתבצע החיפוש של פרטי הכניסה בשירות Application Default Credentials ‏(ADC). המידע הזה יעזור לכם להבין באילו פרטי כניסה נעשה שימוש ב-ADC ואיפה הם אמורים להימצא.

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

במאמר איך מספקים פרטי כניסה ל-Application Default Credentials מתוארות הדרכים המומלצות לספק פרטי כניסה ל-ADC.

סדר החיפוש

החיפוש של פרטי הכניסה ב-ADC מתבצע במקומות הבאים:

  1. במשתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS
  2. בפרטי הכניסה של משתמשים, שהוגדרו באמצעות Google Cloud CLI
  3. בחשבון השירות המצורף, כפי שסופק על ידי שרת המטא-נתונים

משתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS

אפשר להשתמש במשתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS כדי לספק את המיקום של קובץ ה-JSON שמכיל את פרטי הכניסה. קובץ ה-JSON יכול להיות בכל אחד מסוגי הקבצים הבאים:

  • קובץ תצורה של פרטי הכניסה עבור האיחוד של Workload Identity

    האיחוד של Workload Identity מאפשר להשתמש בספק זהויות חיצוני כדי לגשת למשאבים של Google Cloud. למידע נוסף, ראו אימות באמצעות ספריות לקוח, CLI של gcloud או Terraform, במאמרי העזרה בנושא ניהול זהויות והרשאות גישה (IAM).

  • מַפְתח של חשבון שירות

    מפתחות של חשבונות שירות יוצרים סיכון אבטחה ולא מומלץ להשתמש בהם. בניגוד לסוגים אחרים של קובצי פרטי כניסה, גורם זדוני עלול להשתמש במפתחות של חשבונות שירות שנפרצו גם ללא מידע נוסף. למידע נוסף קראו את המאמר שיטות מומלצות לשימוש ולניהול מפתחות של חשבונות שירות.

הגדרת פרטי כניסה של משתמשים באמצעות CLI של gcloud

אתם יכולים להגדיר ל-ADC להשתמש בפרטי הכניסה שלכם בחשבון Google על ידי הרצת הפקודה gcloud auth application-default login. הפקודה הזו יוצרת קובץ JSON שמכיל את פרטי הכניסה במיקום ידוע במערכת הקבצים שלכם. מיקום הקובץ תלוי במערכת ההפעלה:

  • ב-Linux ו-macOS:‏ $HOME/.config/gcloud/application_default_credentials.json
  • ב-Windows:‏ %APPDATA%\gcloud\application_default_credentials.json

למידע נוסף על השימוש ב-CLI של gcloud עם ADC, ראו סוגים של פרטי כניסה ל-gcloud.

חשבון השירות המצורף

בשירותים רבים של Google Cloud אפשר לצרף חשבון שירות שמספק את פרטי הכניסה כדי לגשת ל-Google Cloud APIs. אם ADC לא מוצא את פרטי הכניסה במשתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS או במיקום הידוע של פרטי הכניסה בחשבון Google,‏ ADC יחפש את פרטי הכניסה בשרת המטא-נתונים של השירות שבו הקוד פועל.

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

  1. יוצרים חשבון שירות שמנוהל על ידי משתמש.
  2. מקצים לחשבון השירות את התפקידים עם ההרשאות המינימליות הנדרשות ב-IAM.
  3. מחברים את חשבון השירות למשאב שבו הקוד פועל.

ההגדרה הזו מומלצת לאפליקציות שפועלות בסביבת הייצור.

למידע נוסף, ראו איך מחברים חשבון שירות למשאב. במאמר בחירת תפקידים מוגדרים מראש מוסבר איך מגדירים את תפקידי ה-IAM הנדרשים לחשבון השירות.

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