בדף הזה מוסבר איך להגדיר מדיניות אבטחה היררכית כדי להגן על הארגון, התיקיות או הפרויקטים. לפני שאתם מגדירים מדיניות אבטחה היררכית, חשוב שתכירו את המידע שמופיע בסקירה הכללית על מדיניות אבטחה היררכית.
הגדרת הרשאות IAM למדיניות אבטחה היררכית
כדי לבצע את הפעולות הבאות, צריך שיהיה לכם את התפקיד אדמין של מדיניות אבטחה ברמת הארגון ב-Compute (roles/compute.orgSecurityPolicyAdmin) בניהול הזהויות והרשאות הגישה (IAM) בצומת היררכיית המשאבים של היעד, או במדיניות עצמה אם היא כבר קיימת:
- יצירת מדיניות אבטחה היררכית חדשה
- שינוי מדיניות אבטחה היררכית על ידי הוספה, עדכון או מחיקה של כללים
- מחיקת מדיניות אבטחה היררכית
כדי לבצע את הפעולות הבאות, צריך שיהיה לכם את התפקיד "אדמין של משאבי הארגון ב-Compute" (roles/compute.orgSecurityResourceAdmin) ב-IAM בצומת של היררכיית משאבי היעד, בנוסף לתפקיד "אדמין של מדיניות האבטחה של הארגון ב-Compute" (roles/compute.orgSecurityPolicyAdmin) או לתפקיד "משתמש במדיניות האבטחה של הארגון ב-Compute" (roles/compute.orgSecurityPolicyUser) בצומת של היררכיית משאבי היעד או במדיניות עצמה:
- שיוך של מדיניות אבטחה היררכית לצומת בהיררכיית המשאבים
בטבלה הבאה מפורטות פעולות שונות שאפשר לבצע אם יש לכם את אחד מהתפקידים שברשימה:
| תפעול | תפקידים |
|---|---|
| הצגת כל הכללים בפועל של Google Cloud Armor למשאב בקצה העורפי |
|
הצגת משאבי הקצה העורפי בפועל שכלולים ב-organizationSecurityPolicy |
הגדרת מדיניות אבטחה היררכית
בקטעים הבאים מוסבר איך ליצור כללי מדיניות אבטחה היררכיים, לשייך אותם לצמתים בהיררכיית המשאבים, להעביר אותם בין צמתים, למחוק אותם ולראות את כל כללי מדיניות האבטחה של Cloud Armor שחלים על משאב מוגן.
יצירת מדיניות אבטחה היררכית
כדי ליצור מדיניות אבטחה היררכית, משתמשים בפקודה gcloud compute org-security-policies create.
כדי ליצור מדיניות אבטחה היררכית בארגון או בתיקייה, משתמשים בדגל --organization או --folder, יחד עם ORGANIZATION_ID או FOLDER_ID בהתאמה. אתם יכולים להשתמש בדוגמאות הבאות כדי ליצור מדיניות אבטחה היררכית, ולהחליף את POLICY_NAME בשם שאתם רוצים לתת למדיניות האבטחה החדשה:
יוצרים מדיניות אבטחה היררכית ברמת הארגון:
gcloud compute org-security-policies create \ --organization=ORGANIZATION_ID \ --type=CLOUD_ARMOR \ --short-name=POLICY_NAMEיוצרים מדיניות אבטחה היררכית ברמת התיקייה:
gcloud compute org-security-policies create \ --folder=FOLDER_ID \ --type=CLOUD_ARMOR \ --short-name=POLICY_NAME
שיוך של מדיניות אבטחה קיימת לצומת בהיררכיית המשאבים
אם כבר יש לכם מדיניות אבטחה, אתם יכולים לשייך אותה לצומת בהיררכיית המשאבים באמצעות הפקודה gcloud compute org-security-policies associations create.
שיוך מדיניות אבטחה היררכית לארגון:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --organization=ORGANIZATION_ID \ --name=ASSOCIATION_NAMEכדי לשייך מדיניות אבטחה היררכית לתיקייה:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --folder=FOLDER_ID \ --name=ASSOCIATION_NAMEשיוך מדיניות אבטחה היררכית לפרויקט:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --project-number=PROJECT_ID \ --name=ASSOCIATION_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
POLICY_ID: מזהה מדיניות האבטחה -
ORGANIZATION_ID: מזהה הארגון -
ASSOCIATION_NAME: שם האיגוד -
FOLDER_ID: מזהה התיקייה -
PROJECT_ID: מזהה הפרויקט
החרגת פרויקטים ממדיניות אבטחה היררכית
בנוסף, אתם יכולים להחריג פרויקטים ממדיניות האבטחה ההיררכית ברמת התיקייה, ולהחריג פרויקטים ותיקיות ממדיניות האבטחה ההיררכית ברמת הארגון:
כדי להחריג פרויקטים ממדיניות אבטחה היררכית, משתמשים בפקודה
gcloud compute org-security-policies associations createעם הדגל--excluded-projects.הפקודה הבאה משייכת את מדיניות האבטחה
example-policyלארגון10000001, אבל לא לפרויקט עם המזהה2000000002:gcloud compute org-security-policies associations create \ --security-policy=example-policy \ --excluded-projects="projects/2000000002" \ --organization=10000001כדי להחריג תיקיות ממדיניות אבטחה היררכית ברמת הארגון, משתמשים בפקודה
gcloud compute org-security-policies associations createעם הדגל--excluded-folders.בדוגמה הבאה, הפקודה משייכת את מדיניות האבטחה
example-policyלארגון10000001, אבל לא כוללת את התיקייה עם המזהה3000000003:gcloud compute org-security-policies associations create \ --security-policy=example-policy \ --excluded-folders="folders/3000000003" \ --organization=10000001
העברה של מדיניות אבטחה היררכית
כדי לשנות את ההורה של מדיניות אבטחה היררכית, אפשר להשתמש בפקודה gcloud compute org-security-policies move כדי להעביר את מדיניות האבטחה ההיררכית לצומת אחר בהיררכיית המשאבים של ההורה.
אתם מספקים את המקור כדגל הראשון ואת היעד כדגל השני.
כשמעבירים מדיניות אבטחה היררכית, הבעלות עליה משתנה, ולא המשאב שאליו היא משויכת. רק ארגונים ותיקיות יכולים להיות הבעלים של מדיניות אבטחה היררכית, ולכן אי אפשר להעביר אותם לפרויקטים.
בדוגמה הבאה, מעבירים מדיניות אבטחה היררכית מהארגון ORGANIZATION_ID לתיקייה FOLDER_ID:
gcloud compute org-security-policies move policy-1 \
--organization ORGANIZATION_ID \
--folder FOLDER_ID
מחיקת מדיניות אבטחה היררכית
כדי למחוק מדיניות אבטחה היררכית, קודם צריך למחוק את כל השיוכים של המדיניות לצמתים בהיררכיית המשאבים. בדוגמה הבאה, משתמשים בפקודה gcloud compute org-security-policies associations delete כדי להסיר את השיוך שנקרא ASSOCIATION_NAME בין מדיניות האבטחה ההיררכית שנקראת POLICY_NAME לבין הארגון ORGANIZATION_ID:
gcloud compute org-security-policies associations delete ASSOCIATION_NAME \
--security-policy=POLICY_NAME \
--organization=ORGANIZATION_ID
אם למדיניות האבטחה יש שיוכים נוספים, חוזרים על השלב הקודם לכל שיוך. אם למדיניות האבטחה ההיררכית אין שיוכים, אפשר למחוק אותה באמצעות הפקודה gcloud compute org-security-policies delete, כמו בדוגמה הבאה:
gcloud compute org-security-policies delete POLICY_NAME \
--organization=ORGANIZATION_ID
הצגת כל הכללים בפועל של Cloud Armor למשאב מוגן
כדי לראות את כל הכללים של מדיניות האבטחה של Cloud Armor שחלים על משאב מוגן, משתמשים בפקודה gcloud compute backend-services get-effective-security-policies.
gcloud compute backend-services get-effective-security-policies PROTECTED_RESOURCE
מחליפים את PROTECTED_RESOURCE בשם של המשאב המוגן שרוצים לבדוק.
כשמריצים את הפקודה gcloud compute backend-services get-effective-security-policies בשירות לקצה העורפי בפרויקט שיורש מדיניות אבטחה היררכית, התגובה עשויה לכלול את מדיניות האבטחה ההיררכית גם אם סוג השירות הספציפי לקצה העורפי לא נתמך על ידי מדיניות אבטחה היררכית. בסקירה הכללית על מדיניות אבטחה היררכית מפורטות הגדרות הקצה העורפי שנתמכות במדיניות אבטחה היררכית.
תרחישים לדוגמה
בקטעים הבאים מתוארים תרחישים לדוגמה של מדיניות אבטחה היררכית.
דחיית תנועה מקבוצה של כתובות IP לכל מאזני העומסים של האפליקציות בארגון
אתם יכולים להשתמש במדיניות אבטחה היררכית כדי לנהל רשימה של כתובות IP שלא יכולות לגשת לרשת של הארגון כולו, או כדי לדחות תנועה מאזור או ממדינה מסוימים. כך תוכלו לטפל בבעיות אבטחה ספציפיות לחברה או לשמור על תאימות. כך יוצרים מדיניות אבטחה היררכית ברמת הארגון שדוחה תנועה מטווח כתובות ה-IP 192.0.2.0/24:
יוצרים מדיניות אבטחה היררכית בשם
org-level-deny-ip-policy, שמצורפת לארגון עם המזהה 1000000001:gcloud compute org-security-policies create \ --organization=1000000001 \ --type=CLOUD_ARMOR \ --description= "this org policy denies a set of IP addresses for all resources" \ --short-name=org-level-deny-ip-policyמוסיפים כלל בעדיפות
1000עם תנאי התאמה לטווח כתובות ה-IP192.0.2.0/24ופעולתdeny:gcloud compute org-security-policies rules create 1000 \ --action=deny \ --security-policy=org-level-deny-ip-policy \ --organization=1000000001 \ --description "Deny traffic from 192.0.2.0/24" \ --src-ip-ranges "192.0.2.0/24"לסיום, משייכים את מדיניות האבטחה לארגון, ודוחים בקשות מכתובת ה-IP
192.0.2.0/24לכל השירותים בארגון:gcloud compute org-security-policies associations create \ --security-policy=org-level-deny-ip-policy \ --organization=ORGANIZATION_ID
לתת לקבוצה של כתובות IP של מקור גישה לפרויקטים מסוימים בארגון
אתם יכולים לתת גישה לפרויקטים מסוימים בארגון לכתובת IP אחת או לכמה כתובות IP. זה יכול להיות שימושי אם יש לכם שרת proxy במעלה הזרם שאתם סומכים עליו, ואתם רוצים להחריג אותו מהערכת הכללים רק בחלק מהפרויקטים. בדוגמה הבאה, שמבוססת על Cloud CDN, משתמשים במדיניות אבטחה היררכית ברמת התיקייה כדי לתת לטווח כתובות ה-IP 192.0.2.0/24 גישה לפרויקטים שנקראים project-1, project-2 ו-project-3 בארגון 10000001:
כדי להעביר את
project-1,project-2ו-project-3לתיקייה עם המזהה20000002, משתמשים בפקודות הבאות:gcloud projects move project-1 --folder=20000002 gcloud projects move project-2 --folder=20000002 gcloud projects move project-3 --folder=20000002
כדי ליצור מדיניות אבטחה בשם
org-level-proxy-filtering, משתמשים בפקודה הבאה:gcloud compute org-security-policies create \ --folder=20000002 \ --type=CLOUD_ARMOR \ --short-name=org-level-proxy-filteringמוסיפים כלל בעדיפות
1000עם תנאי התאמה לטווח כתובות ה-IP192.0.2.0/24ופעולת כללgoto_next. אם בקשה תואמת לתנאי הזה, Cloud Armor מפסיק להעריך את הכללים במדיניות האבטחה הזו:gcloud compute org-security-policies rules create 1000 \ --action=goto_next \ --security-policy=org-level-proxy-filtering \ --organization=10000001 \ --src-ip-ranges="192.0.2.0/24"אם רוצים להחיל כללים של מדיניות אבטחה על הפרויקטים האלה לבקשות שלא מגיעות מ-
192.0.2.0/24, מוסיפים עוד כללים בעדיפות נמוכה יותר מ-1000. אפשר לבצע את השלב הזה מאוחר יותר.משתמשים בפקודה הבאה כדי לשייך את המדיניות לתיקייה עם המזהה
20000002, שאליה העברתם את הפרויקטים בשלב 1:gcloud compute org-security-policies associations create \ --security-policy=org-level-proxy-filtering \ --folder=20000002