הפעלת שירות העברת נתונים ל-BigQuery

כדי להשתמש בשירות העברת הנתונים ל-BigQuery, צריך לבצע את השלבים הבאים בתור בעלים של הפרויקט:

  • יוצרים פרויקט ומפעילים את BigQuery API.
  • מפעילים את שירות העברת הנתונים ל-BigQuery.

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

יצירת פרויקט והפעלת BigQuery API

לפני שמשתמשים בשירות העברת נתונים ל-BigQuery, צריך ליצור פרויקט וברוב המקרים גם להפעיל חיוב בפרויקט הזה. אפשר להשתמש בפרויקט קיים עם שירות העברת הנתונים ל-BigQuery, או ליצור פרויקט חדש. אם אתם משתמשים בפרויקט קיים, יכול להיות שתצטרכו גם להפעיל את BigQuery API.

כדי ליצור פרויקט ולהפעיל את BigQuery API:

  1. נכנסים לדף לבחירת הפרויקט במסוף Cloud de Confiance .

    כניסה לדף לבחירת הפרויקט

  2. בוחרים או יוצרים Cloud de Confiance פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
  3. מפעילים את החיוב בפרויקט לכל ההעברות. העברות חינמיות לא מחויבות.

    צריך להפעיל את החיוב רק פעם אחת לכל פרויקט, גם אם מעבירים נתונים מכמה מקורות. צריך גם להפעיל את החיוב כדי להריץ שאילתות על הנתונים ב-BigQuery אחרי שהנתונים מועברים.

    איך מוודאים שהחיוב מופעל בפרויקט?

  4. ‫BigQuery מופעל באופן אוטומטי בפרויקטים חדשים. כדי להפעיל את BigQuery בפרויקט קיים, צריך להפעיל את BigQuery API.

    הפעלת BigQuery API

הפעלת שירות העברת נתונים ל-BigQuery

כדי ליצור העברה, צריך להפעיל את שירות העברת הנתונים ל-BigQuery. כדי להפעיל את שירות העברת נתונים ל-BigQuery, צריך לקבל את התפקיד בעלים בפרויקט.

כדי להפעיל את שירות העברת נתונים ל-BigQuery:

  1. פותחים את הדף BigQuery Data Transfer API בספריית ה-API.

  2. בתפריט הנפתח, בוחרים את הפרויקט המתאים.

  3. לוחצים על הלחצן 'הפעלה'.

    הפעלת Data Transfer API

סוכן שירות

שירות העברת נתונים ל-BigQuery משתמש בסוכן שירות כדי לגשת למשאבים שלכם ולנהל אותם. האיסור הזה כולל, בין היתר, את המשאבים הבאים:

  • שליפת אסימון גישה לחשבון השירות לשימוש באישור העברת הנתונים.
  • פרסום התראות בנושא Pub/Sub שצוין, אם האפשרות הזו מופעלת.
  • הפעלת משימות BigQuery.
  • אחזור אירועים מהמינוי שצוין ב-Pub/Sub להעברה מבוססת-אירועים של Cloud Storage

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

הרשאה של חשבון שירות בפרויקטים שונים

אם מאשרים את העברת הנתונים באמצעות חשבון שירות מפרויקט ששונה מהפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery, צריך להקצות את התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות באמצעות הפקודה הבאה ב-Google Cloud CLI:

gcloud iam service-accounts add-iam-policy-binding service_account \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \
--role roles/iam.serviceAccountTokenCreator

כאשר:

  • service_account הוא חשבון השירות שמשמש להרשאת העברת הנתונים בין הפרויקטים.
  • project_number הוא מספר הפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery.

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

כשמפעילים את ממשק ה-API של שירות העברת נתונים ל-BigQuery דרך Cloud de Confiance המסוף, Google מנסה להעניק באופן אוטומטי את ההרשאות הנדרשות. עם זאת, אם מפעילים את ה-API או יוצרים העברות באמצעות Terraform,‏ Google Cloud CLI או שיטות תכנותיות אחרות, צריך להגדיר את ההרשאות הנדרשות באופן ידני. כדי לאשר העברה באמצעות חשבון שירות מפרויקט אחר, צריך לשים לב לנקודות הבאות:

  • הגדרת הרשאות להעברות בין פרויקטים: כדי לגשת בצורה מאובטחת למקורות נתונים בין פרויקטים, צריך להעניק לסוכן השירות של DTS (שנמצא בפרויקט היעד) את התפקיד roles/iam.serviceAccountTokenCreator בזהות של חשבון השירות במקור.

  • אכיפת העיקרון של הרשאות מינימליות: מעניקים את התפקיד הזה ברמת המשאב (בחשבון השירות הספציפי שבו נעשה שימוש) ולא ברמת הפרויקט.

יצירה ידנית של סוכן שירות

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

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

gcloud projects add-iam-policy-binding project_number \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

כאשר:

  • project_number הוא מספר הפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery.

הענקת גישה ל-bigquery.admin

מומלץ להעניק את bigquery.admin תפקיד IAM המוגדר מראש למשתמשים שיוצרים העברות של שירות העברת נתונים ל-BigQuery. התפקיד bigquery.admin כולל את הרשאות ה-IAM שנדרשות לביצוע המשימות הנפוצות ביותר. התפקיד bigquery.admin כולל את ההרשאות הבאות בשירות העברת נתונים ל-BigQuery:

  • הרשאות של שירות העברת נתונים ל-BigQuery:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • הרשאות ב-BigQuery:
    • bigquery.datasets.get
    • bigquery.datasets.getIamPolicy
    • bigquery.datasets.update
    • bigquery.datasets.setIamPolicy
    • bigquery.jobs.create

במקרים מסוימים, יכול להיות שההרשאות הנדרשות יהיו שונות בין מקורות נתונים שונים. מידע ספציפי על IAM מופיע בקטע 'הרשאות נדרשות' בכל מדריך להעברת מקור נתונים. לדוגמה, אפשר לעיין במאמר הרשאות להעברה ב-Amazon S3 או במאמר הרשאות להעברה ב-Cloud Storage.

כדי להקצות את התפקיד bigquery.admin:

המסוף

  1. פותחים את הדף IAM במסוף Cloud de Confiance .

    כניסה לדף IAM

  2. לוחצים על Select a project (בחירת פרויקט).

  3. בוחרים פרויקט ולוחצים על Open.

  4. לוחצים על הוספה כדי להוסיף חברים חדשים לפרויקט ולהגדיר את ההרשאות שלהם.

  5. בתיבת הדו-שיח הוספת חברים:

    • בחברים, מזינים את כתובת האימייל של המשתמש או הקבוצה.
    • בתפריט הנפתח Select a role, לוחצים על BigQuery > BigQuery Admin.
    • לוחצים על הוספה.

      הענקת הרשאות אדמין

gcloud

אפשר להשתמש ב-Google Cloud CLI כדי להקצות למשתמש או לקבוצה את התפקיד bigquery.admin.

כדי להוסיף קישור יחיד למדיניות IAM של הפרויקט, מקלידים את הפקודה הבאה. כדי להוסיף משתמש, מציינים את האפשרות --member בפורמט user:user@example.com. כדי להוסיף קבוצה, מציינים את הדגל --member בפורמט group:group@example.com.

gcloud projects add-iam-policy-binding project_id \
--member principal:address \
--role roles/bigquery.admin

כאשר:

  • project_id הוא מזהה הפרויקט.
  • principal הוא group או user.
  • address היא כתובת האימייל של המשתמש או הקבוצה.

לדוגמה:

gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin

הפקודה מחזירה את המדיניות המעודכנת:

    bindings:
    - members:
      - group:group@example.com
        role: roles/bigquery.admin
    

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

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

אחרי שמפעילים את שירות העברת הנתונים ל-BigQuery, יוצרים העברה למקור הנתונים.