בדף הזה מוסבר איך לנהל היקפי שירות ב-VPC Service Controls. פרטים על יצירת גבולות גזרה חדשים לשירות מופיעים במאמר יצירת גבולות גזרה לשירות.
הדף הזה כולל את הקטעים הבאים:
לפני שמתחילים
מגדירים את מדיניות הגישה שמוגדרת כברירת מחדל לשימוש בכלי שורת הפקודה
gcloud.-or-
איך מקבלים את שם המדיניות שם המדיניות נדרש לפקודות שמשתמשות בכלי שורת הפקודה
gcloudולביצוע קריאות ל-API. אם מגדירים מדיניות גישה שמוגדרת כברירת מחדל, לא צריך לציין את המדיניות עבור כלי שורת הפקודהgcloud.
הצגה של רשימה ותיאור של service perimeters
כדי להציג רשימה של כל היקפי האבטחה בארגון:
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls, בטבלה, לוחצים על השם של גבולות הגזרה לשירות שרוצים לראות.
gcloud
כדי לראות את רשימת הגדרות ההיקף של השירות בארגון, משתמשים בפקודה list:
gcloud access-context-manager perimeters list
אמורה להופיע רשימה של הגדרות ההיקף של הארגון. לדוגמה:
NAME TITLE ETAG ProdPerimeter Production Perimeter abcdefg123456789
כדי לראות פרטים על גבול גזרה לשירות, משתמשים בפקודה describe:
gcloud access-context-manager perimeters \
describe PERIMETER_ID
מחליפים את מה שכתוב בשדות הבאים:
- PERIMETER_ID הוא המזהה של גבול הגזרה לשירות שרוצים לקבל פרטים לגביו.
יוצגו הפרטים על ההיקף. לדוגמה:
etag: abcdefg123456789 name: accessPolicies/626111171578/servicePerimeters/ProdPerimeter status: accessLevels: - accessPolicies/626111171578/accessLevels/corpAccess resources: - projects/111584792408 restrictedServices: - bigquery.googleapis.com - storage.googleapis.com title: Production Perimeter
רישום של גבולות גזרה לשירות (מעוצב)
באמצעות כלי שורת הפקודה gcloud, אפשר לקבל רשימה של גבולות השירות בפורמט YAML או JSON.
כדי לקבל רשימה מעוצבת של הגדרות ההיקף, משתמשים בפקודה list:
gcloud access-context-manager perimeters list \ --format=FORMAT
מחליפים את מה שכתוב בשדות הבאים:
FORMAT הוא אחד מהערכים הבאים:
list(פורמט YAML)
json(פורמט JSON)
הפלט הבא הוא רשימה לדוגמה בפורמט YAML:
- etag: abcdefg123456789 name: accessPolicies/165717541651/servicePerimeters/On_Prem status: {'resources': ['projects/167410821371'], 'restrictedServices': ['bigquery.googleapis.com', 'storage.googleapis.com']} title: On Prem - etag: hijklmn987654321 name: accessPolicies/165717541651/servicePerimeters/Private spec: {'resources': ['projects/136109111311'], 'restrictedServices': ['bigquery.googleapis.com', 'storage.googleapis.com', 'logging.googleapis.com']} status: {'resources': ['projects/136109111311', 'projects/401921913171'], 'restrictedServices': ['bigquery.googleapis.com']} title: Private useExplicitDryRunSpec: True - etag: pqrstuv123456789 name: accessPolicies/165717541651/servicePerimeters/OnpremBridge perimeterType: PERIMETER_TYPE_BRIDGE status: {'resources': ['projects/167410821371']} title: OnpremBridge
הפלט הבא הוא דוגמה לרשימה בפורמט JSON:
[ { "etag": "abcdefg123456789", "name": "accessPolicies/165717541651/servicePerimeters/On_Prem", "status": { "resources": [ "projects/167410821371" ], "restrictedServices": [ "bigquery.googleapis.com", "storage.googleapis.com" ] }, "title": "On Prem" }, { "etag": "hijklmn987654321", "name": "accessPolicies/165717541651/servicePerimeters/Private", "spec": { "resources": [ "projects/136109111311" ], "restrictedServices": [ "bigquery.googleapis.com", "storage.googleapis.com", "logging.googleapis.com" ] }, "status": { "resources": [ "projects/136109111311", "projects/401921913171" ], "restrictedServices": [ "bigquery.googleapis.com" ] }, "title": "Private", "useExplicitDryRunSpec": true }, { "etag": "pqrstuv123456789", "name": "accessPolicies/165717541651/servicePerimeters/OnpremBridge", "perimeterType": "PERIMETER_TYPE_BRIDGE", "status": { "resources": [ "projects/167410821371" ] }, "title": "OnpremBridge" } ]
עדכון של גבולות גזרה לשירות
בקטע הזה מוסבר איך לעדכן חומות אבטחה נפרדות. כדי לעדכן את כל גבולות השירות של הארגון בפעולה אחת, אפשר לעיין במאמר בנושא ביצוע שינויים גורפים בגבולות שירות.
כדי לעדכן את גבולות הגזרה לשירות, אפשר לבצע את המשימות הבאות:
- להוסיף פרויקטים חדשים Cloud de Confiance או להסיר פרויקטים מגבולות גזרה לשירות.
- לשנות את רשימת השירותים המוגבלים Cloud de Confiance . אפשר גם לשנות את השם והתיאור של גבולות גזרה לשירות.
- הפעלה, הוספה, הסרה או השבתה של שירותים שאפשר לגשת אליהם דרך VPC.
- מעדכנים את מדיניות התעבורה הנכנסת והיוצאת.
אחרי שמעדכנים את היקף השירות, יכולות לחלוף עד 30 דקות עד שהשינויים יתעדכנו וייכנסו לתוקף. במהלך הזמן הזה, יכול להיות שההיקף יחסום בקשות עם הודעת השגיאה הבאה: Error 403: Request is prohibited by organization's policy.
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בדף עריכה של גבולות גזרה לשירות, מעדכנים את גבולות הגזרה לשירות.
לוחצים על Save.
gcloud
כדי להוסיף משאבים חדשים לגבולות גזרה, משתמשים בפקודה update ומציינים את המשאבים שרוצים להוסיף:
gcloud access-context-manager perimeters update PERIMETER_ID \
--add-resources=RESOURCES
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבול הגזרה לשירות שרוצים לקבל פרטים לגביו.
RESOURCES היא רשימה של מספר פרויקט אחד או יותר או שמות של רשתות VPC, שמופרדים באמצעות פסיקים. לדוגמה:
projects/12345או//compute.googleapis.com/projects/my-project/global/networks/vpc1. מותר להשתמש רק בפרויקטים וברשתות VPC. פורמט הפרויקט:projects/project_number. פורמט VPC://compute.googleapis.com/projects/project-id/global/networks/network_name.
כדי לעדכן את רשימת השירותים המוגבלים, משתמשים בפקודה update ומציינים את השירותים שרוצים להוסיף כרשימה מופרדת בפסיקים:
gcloud access-context-manager perimeters update PERIMETER_ID \
--add-restricted-services=SERVICES
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבול הגזרה לשירות שרוצים לקבל פרטים לגביו.
SERVICES היא רשימה מופרדת בפסיקים של שירות אחד או יותר. לדוגמה:
storage.googleapis.comאוstorage.googleapis.com,bigquery.googleapis.com.
הוספת רמת גישה להיקף קיים
אחרי שיוצרים רמת גישה, אפשר להחיל אותה על גבולות גזרה לשירות כדי לשלוט בגישה.
אחרי שמעדכנים את היקף השירות, יכולות לחלוף עד 30 דקות עד שהשינויים יתעדכנו וייכנסו לתוקף. במהלך הזמן הזה, יכול להיות שההיקף יחסום בקשות עם הודעת השגיאה הבאה: Error 403: Request is prohibited by organization's policy.
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בדף עריכת גבולות גזרה לשירות, לוחצים על רמות גישה.
לוחצים על הוספת רמות גישה.
בחלונית הוספת רמות גישה, מסמנים את תיבות הסימון שמתאימות לרמות הגישה שרוצים להחיל על היקף שירות.
לוחצים על הוספת רמות הגישה שנבחרו.
לוחצים על Save.
gcloud
כדי להוסיף רמת גישה לגבולות גזרה לשירות קיימים, משתמשים בפקודה update:
gcloud access-context-manager perimeters update PERIMETER_ID \
--add-access-levels=LEVEL_NAME
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
LEVEL_NAME הוא שם רמת הגישה שרוצים להוסיף להיקף.
מידע נוסף על שימוש ברמות גישה עם היקף זמין במאמר מתן גישה למשאבים מוגנים מחוץ להיקף.
מחיקת גבולות גזרה לשירות
כשמוחקים גבולות גזרה לשירות, אמצעי הבקרה לאבטחה שמשויכים לגבולות הגזרה כבר לא חלים על הפרויקטים המשויכים ב- Cloud de Confiance by S3NS. אין השפעה אחרת על הפרויקטים של חברי הקבוצה Cloud de Confiance או על המשאבים המשויכים.
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls, בשורה בטבלה שמתאימה לגבולות הגזרה שרוצים למחוק, לוחצים על .
gcloud
כדי למחוק גבולות גזרה לשירות, משתמשים בפקודה delete:
gcloud access-context-manager perimeters delete PERIMETER_ID
מחליפים את מה שכתוב בשדות הבאים:
- PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
הגבלת הגישה לממשקי Google API בתוך היקף
בקטע הזה מתוארות הגדרות תצורה שמגבילות את הגישה לממשקי Google API מנקודות קצה ברשת בתוך היקף שירות.
אפשר להגביל את הגישה בדרכים הבאות:
- הגדרת שירותים שניתן לגשת אליהם דרך VPC: הגבלת קבוצת Google APIs הנתמכים שאפשר לגשת אליהם מנקודות קצה ברשת בתוך גבולות גזרה לשירות.
- הגדרת דפוסי שירות: הגבלת קבוצת ממשקי Google API שלא נתמכים שאפשר לגשת אליהם מנקודות קצה ברשת בתוך גבולות גזרה לשירות.
הגבלת הגישה באמצעות שירותים שניתן לגשת אליהם מ-VPC
אתם יכולים להשתמש בתכונה 'שירותים נגישים ב-VPC' כדי להגביל את קבוצת השירותים שאפשר לגשת אליהם מנקודות קצה ברשת בתוך גבולות גזרה לשירות. אפשר להוסיף שירותים עם גישה ל-VPC למתחמי אבטחה, אבל לא לגשרים בין מתחמי אבטחה.
מידע נוסף על התכונה 'שירותים שניתן לגשת אליהם דרך VPC' זמין במאמר בנושא שירותים שניתן לגשת אליהם דרך VPC.
הפעלת שירותים שאפשר לגשת אליהם דרך VPC
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בחלונית VPC accessible services, בוחרים באחת מהאפשרויות הבאות:
- כל השירותים המוגבלים: הגישה מוגבלת רק לשירותים שמוגנים על ידי גבולות גזרה לשירות זה.
- שירותים נבחרים: מגבילה את הגישה לרשימה מותאמת אישית של שירותים.
- ללא שירותים: חסימת הגישה לכל השירותים.
לוחצים על שמירה ואז על אישור.
gcloud
כדי להפעיל שירותים עם גישה ל-VPC עבור גבולות גזרה לשירות, משתמשים בפקודה update:
gcloud access-context-manager perimeters update PERIMETER_ID \
--enable-vpc-accessible-services \
--add-vpc-allowed-services=SERVICES
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
SERVICES: רשימה מופרדת בפסיקים של שירות אחד או יותר שרוצים לאפשר לרשתות בתוך גבולות הגזרה שלכם לגשת אליהם. הגישה לכל השירותים שלא נכללים ברשימה הזו נחסמת.
כדי לכלול במהירות את השירותים שמוגנים על ידי גבולות הגזרה, מוסיפים את
RESTRICTED-SERVICESלרשימה של SERVICES. אפשר לכלול שירותים אחרים בנוסף ל-RESTRICTED-SERVICES.
לדוגמה, כדי לוודא שלרשתות ה-VPC ב-perimeter יש גישה רק לשירותים Logging ו-Cloud Storage, משתמשים בפקודה הבאה:
gcloud access-context-manager perimeters update example_perimeter \
--enable-vpc-accessible-services \
--add-vpc-allowed-services=\
RESTRICTED-SERVICES,logging.googleapis.com,storage.googleapis.com \
--policy=11271009391
הוספת שירות לשירותים שניתן לגשת אליהם ב-VPC
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בחלונית VPC accessible services (שירותים שאפשר לגשת אליהם ב-VPC), בוחרים באפשרות Selected services (שירותים נבחרים).
לוחצים על הוספת שירותים.
בחלונית הוספת שירותים, מסמנים את התיבות של השירותים שרוצים לאפשר.
לוחצים על הוספת השירותים שנבחרו.
אופציונלי: כדי לכלול אוטומטית את כל השירותים שמוגנים על ידי גבולות הגזרה, לוחצים על המתג Include all restricted services (כלול את כל השירותים המוגבלים) כדי להפעיל אותו.
לוחצים על שמירה ואז על אישור.
gcloud
כדי להוסיף שירותים נוספים לשירותים הנגישים ל-VPC בגבולות הגזרה שלכם, משתמשים בפקודה update:
gcloud access-context-manager perimeters update PERIMETER_ID \
--add-vpc-allowed-services=SERVICES
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
SERVICES: רשימה מופרדת בפסיקים של שירות אחד או יותר שרוצים לאפשר לרשתות בתוך גבולות הגזרה שלכם לגשת אליהם.
כדי לכלול במהירות את השירותים שמוגנים על ידי גבולות הגזרה, מוסיפים את
RESTRICTED-SERVICESלרשימה של SERVICES. אפשר לכלול שירותים נפרדים בנוסף ל-RESTRICTED-SERVICES.
לדוגמה, אם מפעילים שירותים עם גישה ל-VPC ורוצים שרשתות ה-VPC בהיקף שלכם יוכלו לגשת לשירות Pub/Sub, משתמשים בפקודה הבאה:
gcloud access-context-manager perimeters update example_perimeter \
--add-vpc-allowed-services=RESTRICTED-SERVICES,pubsub.googleapis.com \
--policy=11271009391
הסרת שירות מהשירותים שאפשר לגשת אליהם ב-VPC
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בחלונית VPC accessible services (שירותים שאפשר לגשת אליהם ב-VPC), מוודאים שהאפשרות מוגדרת ל-Selected services (שירותים נבחרים).
ברשימת השירותים המותרים, מאתרים את השירות שרוצים להסיר ולוחצים על מחיקה לצד שם השירות.
לוחצים על שמירה ואז על אישור.
gcloud
כדי להסיר שירותים מהשירותים הנגישים ב-VPC עבור היקף השירות, משתמשים בפקודה update:
gcloud access-context-manager perimeters update PERIMETER_ID \
--remove-vpc-allowed-services=SERVICES
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
SERVICES היא רשימה מופרדת בפסיקים של שירות אחד או יותר שרוצים להסיר מהרשימה של השירותים שלרשתות בתוך גבולות גזרה לשירות מותר לגשת אליהם.
לדוגמה, אם הפעלתם שירותים שנגישים ל-VPC ואתם כבר לא רוצים שלרשתות ה-VPC בהיקף שלכם תהיה גישה לשירות Cloud Storage, אתם יכולים להשתמש בפקודה הבאה:
gcloud access-context-manager perimeters update example_perimeter \
--remove-vpc-allowed-services=storage.googleapis.com \
--policy=11271009391
השבתת שירותים שאפשר לגשת אליהם מ-VPC
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בחלונית VPC accessible services (שירותים שאפשר לגשת אליהם ב-VPC), בוחרים באפשרות All services (כל השירותים).
לוחצים על שמירה ואז על אישור.
gcloud
כדי להשבית את ההגבלות על שירותי VPC ב-גבולות גזרה לשירות, משתמשים בפקודה update:
gcloud access-context-manager perimeters update PERIMETER_ID \
--no-enable-vpc-accessible-services \
--clear-vpc-allowed-services
מחליפים את מה שכתוב בשדות הבאים:
- PERIMETER_ID הוא המזהה של גבולות גזרה לשירות.
לדוגמה, כדי להשבית את ההגבלות על שירותי VPC עבור example_perimeter, משתמשים בפקודה הבאה:
gcloud access-context-manager perimeters update example_perimeter \
--no-enable-vpc-accessible-services \
--clear-vpc-allowed-services \
--policy=11271009391
הגבלת הגישה באמצעות דפוסי שירות
אתם יכולים להשתמש בתבניות שירות של VPC Service Controls כדי לציין לאילו ממשקי Google API, כולל שירותים לא נתמכים, תהיה גישה מרשתות בתוך גבולות גזרה לשירות.
שירותים שאפשר לגשת אליהם דרך VPC מחייבים שימוש בכתובת IP וירטואלית מוגבלת, אבל תבניות שירות מיועדות לרשתות שמשתמשות בכתובת IP וירטואלית פרטית (private.googleapis.com) או בנקודת קצה של Private Service Connect עם חבילת all-apis.
המסוף
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה של שירות VPC), בטבלה, לוחצים על השם של גבולות גזרה לשירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בחלונית VPC accessible services (שירותים שאפשר לגשת אליהם ב-VPC), בוחרים באפשרות Select services and patterns (בחירת שירותים ותבניות).
כדי להוסיף שירות נתמך או דפוס שירות לא נתמך, לוחצים על הוספה.
- כדי להוסיף Google API נתמך:
- בוחרים באפשרות שירותים.
- מסמנים את התיבה לצד כל שם שירות שרוצים לאשר.
- לוחצים על הוספת השירותים שנבחרו.
- כדי להוסיף Google API שלא נתמך באמצעות תבנית מותאמת אישית של כתובת URL:
- בוחרים באפשרות דפוסים.
- לוחצים על הוספת תבנית או מזינים תבנית של כתובת URL בשדה תבנית (לדוגמה,
maps.googleapis.com/*). - אופציונלי: מוסיפים כותרות מותאמות אישית של בקשת HTTP. לוחצים על הוספת request header, בוחרים מפתח כותרת מהרשימה מפתח ומציינים את הערך.
- לוחצים על הוספת דפוסי שירות.
- כדי להוסיף Google API נתמך:
בתפריט הנפתח Service patterns enforcement scopes (היקפי אכיפה של דפוסי שירות), בוחרים באפשרות Google APIs via Private Path (ממשקי API של Google דרך נתיב פרטי).
לוחצים על שמירה ואז על אישור.
gcloud
כדי להגדיר תבניות שירות, צריך לציין את הגדרת השירותים שאפשר לגשת אליהם מ-VPC בקובץ YAML.
enableRestriction: true
servicePatternsEnforcementScopes:
- GOOGLE_APIS_VIA_PRIVATE_PATH
allowedServicePatterns:
- service: 'RESTRICTED-SERVICES'
- service: 'logging.googleapis.com'
- pattern: 'maps.googleapis.com/*'
- pattern: 'www.googleapis.com/drive/*'
קובץ ה-YAML מכיל את השדות הבאים:
-
enableRestriction: אם מגדירים את הערךtrue, מופעלות הגבלות על השירותים שאפשר לגשת אליהם. -
servicePatternsEnforcementScopes: מגדירים את הערך הזה ל-GOOGLE_APIS_VIA_PRIVATE_PATHכדי לאכוף דפוסי שירות ב-Google APIs שאליהם ניגשים דרך ה-VIP הפרטי. -
allowedServicePatterns: רשימת השירותים המותרים ותבניות כתובות ה-URL, שמייצגות שמות מארחים של Google API ותבניות של נתיבי כתובות URL, בהתאמה לכותרות ה-HTTPHostשל הבקשות.- משתמשים בשדה
serviceלשירותים נתמכים (לדוגמה,logging.googleapis.com). אפשר גם לציין את הערךRESTRICTED-SERVICES, שמורחב לכל השירותים שמוגנים על ידי גבולות גזרה לשירות. - משתמשים בשדה
patternלתבניות URL לא נתמכות (לדוגמה,maps.googleapis.com/*).
- משתמשים בשדה
יצירה או עדכון של היקפים באמצעות תבניות שירות
כדי ליצור גבולות גזרה לשירות עם תבניות שירות, משתמשים בפקודה create. מציינים את קובץ ההגדרות ב-YAML שהגדרתם במאמר הגבלת הגישה באמצעות תבניות שירות:
gcloud access-context-manager perimeters \
create PERIMETER_ID \
--title="TITLE" \
--resources="projects/PROJECT_ID" \
--restricted-services=SERVICES \
--vpc-accessible-services=vpc_accessible_services.yaml \
--policy=POLICY_ID
כדי לעדכן גבול גזרה לשירות קיים כך שישתמש בתבניות שירות, משתמשים בפקודה update. מציינים את קובץ ההגדרות ב-YAML שהגדרתם במאמר הגבלת הגישה באמצעות תבניות שירות:
gcloud access-context-manager perimeters \
update PERIMETER_ID \
--set-vpc-accessible-services=vpc_accessible_services.yaml \
--policy=POLICY_ID
מחליפים את מה שכתוב בשדות הבאים:
PERIMETER_ID: המזהה של גבולות גזרה לשירות.
TITLE: השם של גבולות הגזרה לשירות.
PROJECT_ID: מזהה הפרויקט שרוצים להוסיף לגבולות הגזרה.
SERVICES: רשימה מופרדת בפסיקים של שירות אחד או יותר.
POLICY_ID: המזהה של מדיניות הגישה.
vpc_accessible_services.yamlהוא הנתיב לקובץ ההגדרות ב-YAML שהגדרתם במאמר הגבלת הגישה באמצעות תבניות שירות.
צירוף כותרות לבקשות לממשקי API שלא נתמכים
אפשר לצרף כותרות HTTP (כמו X-Goog-Allowed-Resources) לבקשות של ממשקי API שלא נתמכים. מוסיפים את modifiers לקטע allowedServicePatterns בקובץ ה-YAML של התצורה:
enableRestriction: true
servicePatternsEnforcementScopes:
- GOOGLE_APIS_VIA_PRIVATE_PATH
allowedServicePatterns:
- pattern: 'appengine.googleapis.com/*'
modifiers:
- addRequestHeader:
key: 'X-Goog-Allowed-Resources'
value: 'YOUR_ORGANIZATION_RESTRICTIONS_HEADER'
הקטע addRequestHeader מכיל את השדות הבאים שבהם מציינים את כותרות בקשת ה-HTTP:
-
key: השם של כותרת בקשת ה-HTTP שרוצים להוסיף. המפתחות הנתמכים הםX-Goog-Allowed-Resourcesו-X-GoogApps-Allowed-Domains. -
value: הערך של כותרת בקשת ה-HTTP שצוינה.
מחליפים את YOUR_ORGANIZATION_RESTRICTIONS_HEADER במחרוזת JSON בקידוד base64 שמתאימה לשימוש באינטרנט ומציינת את מזהי הארגון המותרים. Cloud de Confianceפרטים על הפורמט של ערך הכותרת הזה זמינים במאמר בנושא הגדרת הגבלות על הארגון.
בדיקה באמצעות מצב הרצה יבשה
המסוף
כדי לבדוק את ההשפעה של דפוסי השירות לפני שאוכפים אותם, צריך להגדיר את דפוסי השירות במצב פרימטר לבדיקות של גבולות הגזרה:
בתפריט הניווט של מסוף Cloud de Confiance , לוחצים על Security (אבטחה) ואז על VPC Service Controls.
בדף VPC Service Controls (אמצעי בקרה לשירותי VPC), לוחצים על הכרטיסייה Dry run mode (מצב הרצה יבשה).
ברשימת הגדרות ההיקף של השירות, לוחצים על השם של הגדרת ההיקף של השירות שרוצים לשנות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על עריכה.
בדף Edit service perimeter (עריכת היקף השירות), מבצעים שינויים בהגדרות של ההרצה היבשה (כפי שמתואר במאמר הגבלת הגישה באמצעות תבניות שירות).
לוחצים על שמירה ואז על אישור.
בודקים את יומני הביקורת כדי לראות אם יש הפרות. פרטים נוספים זמינים במאמר בנושא זיהוי בקשות חסומות.
בדף פרטים של גבולות גזרה לשירות, לוחצים על החלת ההגדרה.
כשמתבקשים לאשר שרוצים להחליף את ההגדרה הקיימת, לוחצים על אישור.
gcloud
כדי לבדוק את ההשפעה של דפוסי השירות לפני שאוכפים אותם, מגדירים את דפוסי השירות במצב פרימטר לבדיקות של גבולות הגזרה:
יוצרים היקף יבש שמכיל את קובץ ההגדרות.
gcloud access-context-manager perimeters dry-run \ create PERIMETER_ID \ --perimeter-title="TITLE" \ --perimeter-resources="projects/PROJECT_ID" \ --perimeter-restricted-services=SERVICES \ --perimeter-vpc-accessible-services=vpc_accessible_services.yaml \ --policy=POLICY_IDבודקים את יומני הביקורת כדי לראות אם יש הפרות.
אוכפים את ההגדרה על ידי החלפת ההגדרה הראשית של ההיקף.
gcloud access-context-manager perimeters dry-run \ enforce PERIMETER_ID \ --policy=POLICY_ID
מעבר מ-VIP מוגבל ל-VIP פרטי
אם אתם כבר משתמשים בשירותים שנגישים ל-VPC עם כתובת ה-VIP המוגבלת, אתם יכולים לעבור לדפוסי שירות בכתובת ה-VIP הפרטית:
כדי לעדכן את הגדרת ה-perimeter כך שתשתמש בתבניות שירות באמצעות קובץ YAML:
gcloud access-context-manager perimeters \ update PERIMETER_ID \ --set-vpc-accessible-services=vpc_accessible_services.yaml \ --policy=POLICY_IDמוודאים שההגדרה
servicePatternsEnforcementScopesהיאGOOGLE_APIS_VIA_PRIVATE_PATH.מעדכנים את הגדרות ה-DNS, הניתוב וחומת האש ברשת ה-VPC כך שיצביעו על כתובת ה-IP הווירטואלית הפרטית (
private.googleapis.com), או מעדכנים את נקודת הקצה (endpoint) של Private Service Connect כך שתשתמש בחבילהall-apis.
מגבלות
- האכיפה חלה רק על הנתיב הפרטי של כתובת ה-VIP (
private.googleapis.comאו נקודת הקצה של Private Service Connectall-apis). - יש תמיכה בפורמטים הבאים של תבניות כתובות URL:
API_NAME.googleapis.com/*www.googleapis.com/API_NAME/**.appspot.com/*
- יש תמיכה רק בערכים
X-Goog-Allowed-Resourcesו-X-GoogApps-Allowed-Domains. - הכותרות מוכנסות רק לבקשות לשירותים שלא נתמכים.
- אם מוגדרים משנים ו-
addRequestHeaderבמצב הרצה יבשה, הם לא מוסיפים כותרות. - יומני הפרות שמופעלים על ידי בקשות ל-API שלא נתמכים מכילים מטא-נתונים מוגבלים. פרטים נוספים זמינים במאמר בנושא מגבלות של יומני ביקורת.
- כלי הניתוח של הפרות ב-VPC Service Controls לא תומך בפתרון בעיות של הפרות בשירותים שלא נתמכים. אפשר לעיין ביומני הביקורת באמצעות מזהה ההפרה.
שירותים שאפשר לגשת אליהם מ-VPC וממשק Access Context Manager API
אפשר גם להשתמש ב-Access Context Manager API כדי לנהל שירותים שאפשר לגשת אליהם דרך VPC.
כשיוצרים או משנים גבול גזרה לשירות, משתמשים באובייקט ServicePerimeterConfig בגוף התגובה כדי להגדיר את השירותים שאפשר לגשת אליהם ב-VPC.