הגדרת VPC Service Controls

VPC Service Controls הוא תכונה שמאפשרת להגדיר מתחם היקפי שעוזר להגן מפני זליגת נתונים. Google Cloud במדריך הזה נסביר איך להשתמש ב-VPC Service Controls עם Dataform כדי לשפר את האבטחה של השירותים.

VPC Service Controls מספק שכבת הגנה נוספת לשירותיGoogle Cloud , שהיא בלתי תלויה בהגנה שמסופקת על ידי ניהול זהויות והרשאות גישה (IAM).

מידע נוסף על VPC Service Controls זמין במאמר סקירה כללית על VPC Service Controls.

מגבלות

‫Dataform תומך ב-VPC Service Controls עם המגבלות הבאות:

שיקולי אבטחה

כשמגדירים גבולות גזרה לשירות ב-VPC Service Controls עבור Dataform, חשוב לבדוק את ההרשאות שניתנו לחשבונות השירות המותאמים אישית כדי לוודא שהן תואמות לארכיטקטורת האבטחה שלכם.

בהתאם להרשאות שאתם מעניקים לחשבון השירות המותאם אישית, יכול להיות שלחשבון השירות תהיה גישה לנתוני BigQuery או לנתוני Secret Manager בפרויקט שאליו חשבון השירות משויך, ללא קשר ל-VPC Service Controls. במקרה כזה, הגבלת הגישה ל-Dataform באמצעות היקף של VPC Service Controls לא חוסמת את התקשורת עם BigQuery או עם Secret Manager.

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

אם אף אחד ממאגרי Dataform שלכם לא מתחבר למאגר Git של צד שלישי, כדאי לחסום את התקשורת עם Secret Manager. מידע נוסף על חסימת תקשורת עם Secret Manager זמין במאמר בנושא חסימת תקשורת עם Secret Manager.

לפני שמתחילים

לפני שמגדירים גבול גזרה לשירות של VPC Service Controls עבור Dataform, צריך לפעול לפי ההוראות במדריך הגבלת מאגרים מרוחקים כדי להגדיר את מדיניות הארגון dataform.restrictGitRemotes.

נדרשת מדיניות הארגון dataform.restrictGitRemotes כדי לוודא שבדיקות של VPC Service Controls נאכפות כשמשתמשים ב-Dataform, ושהגישה של צד שלישי למאגרי Dataform Git מוגבלת.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות להגדרת היקף שירות של VPC Service Controls, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד עורך של Access Context Manager (roles/accesscontextmanager.policyEditor) בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

מידע נוסף על הרשאות ב-VPC Service Controls זמין במאמר בקרת גישה באמצעות IAM.

הגדרת VPC Service Controls

אפשר להגביל את Dataform באמצעות מתחם היקפי של שירות VPC Service Controls בדרכים הבאות:

  • הוספת Dataform לגבולות גזרה לשירות קיימים שמגבילים את BigQuery.
  • יוצרים גבולות גזרה לשירות שמגבילים גם את Dataform וגם את BigQuery.

כדי להוסיף את Dataform לגבול גזרה לשירות שמגביל את BigQuery, פועלים לפי ההוראות במאמר עדכון גבול גזרה לשירות במסמכי התיעוד של VPC Service Controls.

כדי ליצור גבולות גזרה לשירות חדשים שמגבילים את הגישה ל-Dataform ול-BigQuery, פועלים לפי ההוראות במדריך יצירת גבולות גזרה לשירות במאמרי העזרה של VPC Service Controls.

אופציונלי: חסימת התקשורת עם BigQuery

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

  • ההרשאה bigquery.jobs.create שניתנה לחשבון השירות המותאם אישית.
  • התפקיד 'יצירת אסימונים בחשבון שירות' (roles/iam.serviceAccountTokenCreator), שמוקצה לסוכן השירות של Dataform שמוגדר כברירת מחדל בחשבון השירות המותאם אישית.

אפשר לחסום את התקשורת בין חשבון שירות מותאם אישית לבין BigQuery באחת מהדרכים הבאות:

אופציונלי: חסימת התקשורת עם Secret Manager

‫Dataform משתמש בהרשאה secretmanager.versions.access כדי לגשת לסודות ספציפיים ב-Secret Manager. אתם מעניקים את ההרשאה הזו לסוכן השירות שמוגדר כברירת מחדל ב-Dataform בסוד נבחר ב-Secret Manager כשאתם מקשרים מאגר Dataform למאגר של צד שלישי.

כדי לחסום את התקשורת בין Dataform לבין Secret Manager, צריך לבטל את הגישה לכל הסודות מסוכן השירות שמוגדר כברירת מחדל ב-Dataform.

כדי לבטל את הגישה לסוד ב-Secret Manager מסוכן השירות שמוגדר כברירת מחדל ב-Dataform, פועלים לפי ההוראות במדריך ניהול הגישה לסודות בתיעוד של Secret Manager. צריך לבטל את כל התפקידים המוגדרים מראש והתפקידים בהתאמה אישית שכוללים את ההרשאה secretmanager.versions.access, שניתנה לסוכן השירות של Dataform שמוגדר כברירת מחדל בסוד שנבחר.

ההרשאה secretmanager.versions.access כלולה בתפקידי ה-IAM המוגדרים מראש ב-Secret Manager:

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