אימות והרשאה

כדי להשתמש בפלאגין של טלמטריה של Firebase, צריך מזהה פרויקט ב-Google Cloud או ב-Firebase ופרטי כניסה לאפליקציה.

אם אין לכם פרויקט וחשבון ב-Google Cloud, תוכלו להגדיר אותם במסוף Firebase או במסוף Google Cloud. כל מזהי הפרויקטים ב-Firebase הם מזהי פרויקטים ב-Google Cloud.

הפעלת ממשקי API

לפני שמוסיפים את הפלאגין, צריך לוודא שממשקי ה-API הבאים מופעלים בפרויקט:

ממשקי ה-API האלה אמורים להופיע במרכז הבקרה של ה-API של הפרויקט. מידע נוסף על הפעלה והשבתה של ממשקי API

אימות משתמשים

כדי לייצא נתוני טלמטריה מסביבת הפיתוח המקומית ל-Firebase Genkit Monitoring, תצטרכו לבצע אימות באמצעות Google Cloud.

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

אם ה-CLI של gcloud לא מותקן, קודם פועלים לפי הוראות ההתקנה.

  1. אימות באמצעות ה-CLI של gcloud:

    gcloud auth application-default login
  2. הגדרת מזהה הפרויקט

    gcloud config set project PROJECT_ID

פריסת הקוד ב-Google Cloud

אם אתם פורסים את הקוד בסביבת Google Cloud או Firebase (Cloud Functions,‏ Cloud Run,‏ App Hosting וכו'), מזהה הפרויקט ופרטי הכניסה ייחשפו באופן אוטומטי באמצעות Application Default Credentials.

צריך להחיל את התפקידים הבאים על חשבון השירות שבו פועל הקוד (כלומר 'חשבון השירות המצורף') באמצעות מסוף IAM:

  • roles/monitoring.metricWriter
  • roles/cloudtrace.agent
  • roles/logging.logWriter

לא בטוחים איזה חשבון שירות מתאים? ראו את הקטע חיפוש או יצירה של חשבון השירות.

פריסה מחוץ ל-Google Cloud (באמצעות ADC)

אם אפשר, כדאי להשתמש ב-Application Default Credentials כדי לאפשר לפלאגין לגשת לפרטי הכניסה.

בדרך כלל, הדבר כרוך ביצירת מפתח לחשבון שירות ופריסה של פרטי הכניסה האלה בסביבת הייצור.

  1. פועלים לפי ההוראות כדי להגדיר מפתח לחשבון שירות.

  2. מוודאים שלחשבון השירות יש את התפקידים הבאים:

    • roles/monitoring.metricWriter
    • roles/cloudtrace.agent
    • roles/logging.logWriter
  3. פורסים את קובץ פרטי הכניסה בסביבת הייצור (לא מוסיפים אותו לקוד המקור)

  4. מגדירים את משתנה הסביבה GOOGLE_APPLICATION_CREDENTIALS כנתיב לקובץ פרטי הכניסה.

    GOOGLE_APPLICATION_CREDENTIALS = "path/to/your/key/file"

לא בטוחים איזה חשבון שירות מתאים? ראו את הקטע חיפוש או יצירה של חשבון השירות.

פריסה מחוץ ל-Google Cloud (ללא ADC)

בסביבות ללא שרת, יכול להיות שלא תוכלו לפרוס קובץ פרטי כניסה.

  1. פועלים לפי ההוראות כדי להגדיר מפתח לחשבון שירות.

  2. מוודאים שלחשבון השירות יש את התפקידים הבאים:

    • roles/monitoring.metricWriter
    • roles/cloudtrace.agent
    • roles/logging.logWriter
  3. מורידים את קובץ פרטי הכניסה.

  4. מקצים את התוכן של קובץ פרטי הכניסה למשתנה הסביבה GCLOUD_SERVICE_ACCOUNT_CREDS באופן הבא:

GCLOUD_SERVICE_ACCOUNT_CREDS='{
  "type": "service_account",
  "project_id": "your-project-id",
  "private_key_id": "your-private-key-id",
  "private_key": "your-private-key",
  "client_email": "your-client-email",
  "client_id": "your-client-id",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://accounts.google.com/o/oauth2/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "your-cert-url"
}'

לא בטוחים איזה חשבון שירות מתאים? ראו את הקטע חיפוש או יצירה של חשבון השירות.

איך מוצאים או יוצרים חשבון שירות

כדי למצוא את חשבון השירות המתאים:

  1. עוברים אל הדף service accounts במסוף Google Cloud.
  2. בוחרים את הפרויקט הרצוי.
  3. מאתרים את חשבון השירות המתאים. חשבונות שירות נפוצים שמוגדרים כברירת מחדל:
  • פונקציות Firebase ו-Cloud Run

    PROJECT ID-compute@developer.gserviceaccount.com

  • App Engine

    PROJECT ID@appspot.gserviceaccount.com

  • App Hosting

    firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com

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