סימולטור מדיניות למדיניות הרשאות

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

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

איך פועל סימולטור המדיניות למדיניות הרשאות

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

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

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

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

  1. הפקודה מאחזרת יומני גישה לסוגי משאבים נתמכים מ-90 הימים האחרונים. המקום שממנו נאספים היומנים האלה תלוי במשאב שמדמים את מדיניות ההרשאות שלו:

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

    אם משאב האב לא קיים כבר 90 ימים, סימולטור המדיניות מאחזר את כל ניסיונות הגישה מאז שהמשאב נוצר.

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

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

  3. מריץ שוב את הניסיונות לגשת למשאב באמצעות מדיניות ההרשאות המוצעת, תוך התחשבות בכל מדיניות הרשאות שהועברה בירושה ובכל מדיניות הרשאות שהוגדרה במשאבי צאצא.

  4. הכלי משווה בין התוצאות של שני ההפעלות החוזרות ומדווח על ההבדלים, כדי להראות איך השינויים המוצעים ישפיעו על הגישה של חשבון המשתמש.

דוגמה: בדיקת שינויים במדיניות

נניח שאתם רוצים להסיר את התפקיד Organization Viewer (צופה בארגון) (roles/resourcemanager.organizationViewer) של משתמש מסוים. אתם רוצים להשתמש בסימולטור המדיניות כדי לוודא שהשינוי הזה לא ישפיע על הגישה של המשתמש.

משתמשים במסוף Google Cloud , ב-API בארכיטקטורת REST או ב-Google Cloud CLI כדי לדמות את השינוי במדיניות ההרשאה.

כשמתחילים את הסימולציה, כלי סימולטור המדיניות מבצע את הפעולות הבאות:

  • מאחזר את יומני הגישה של הארגון מ-90 הימים האחרונים.
  • מפעיל מחדש את ניסיונות הגישה באמצעות מדיניות ההרשאה הנוכחית של הארגון, שבה למשתמש יש את התפקיד 'צפייה בארגון'.
  • מריץ שוב את ניסיונות הגישה באמצעות מדיניות ההרשאה המוצעת, שבה למשתמש אין את התפקיד 'צפייה בארגון'.
  • הכלי משווה את התוצאות משני ההפעלות החוזרות ומדווח על ההבדלים ביניהן.

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

דוגמה: ירושה של מדיניות

נניח שרוצים לדמות שינוי במדיניות הרשאות של תיקייה, Engineering, בארגון עם המבנה הבא:

דוגמה למבנה ארגוני

שימו לב שלמשאב Engineering יש משאב הורה, הארגון example.com, שממנו הוא יורש את מדיניות ההרשאות. יש לו גם שלושה פרויקטים צאצאים שיכולים להיות להם מדיניות משלהם בנושא הרשאות: example-prod,‏ example-dev ו-example-test.

אתם מספקים מדיניות הרשאה מוצעת ומריצים את הסימולציה. כשמתחילים את הסימולציה, סימולטור המדיניות מבצע את הפעולות הבאות:

  • אחזור כל היומנים הרלוונטיים מ-90 הימים האחרונים. מכיוון ש-Engineering היא תיקייה, סימולטור המדיניות מאחזר יומנים מהארגון האב שלה, example.com.
  • מפעיל מחדש את ניסיונות הגישה באמצעות מדיניות ההרשאות הנוכחית של התיקייה, מדיניות ההרשאות שעברה בירושה מ-example.com ומדיניות ההרשאות של פרויקטי הצאצא.
  • מריץ שוב כל ניסיון גישה באמצעות מדיניות ההרשאות המוצעת, מדיניות ההרשאות שעברה בירושה מ-example.com ומדיניות ההרשאות של פרויקטי הצאצא.
  • השוואה בין התוצאות של ההפעלות החוזרות ודיווח על ההבדלים ביניהן.

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

תוצאות של סימולטור המדיניות

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

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

יש כמה סוגים שונים של שינויים בגישה:

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

התוצאה הזו יכולה להופיע מהסיבות הבאות:

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

התוצאה הזו יכולה להופיע מהסיבות הבאות:

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

תוצאות לא ידועות

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

יכולות להיות כמה סיבות לכך שתוצאה מסוימת לא ידועה:

  • Role info denied: לחשבון המשתמש שמריץ את הסימולציה אין הרשאה לראות את פרטי התפקיד של אחד או יותר מהתפקידים שמדמים.
  • אין אפשרות לגשת למדיניות: לחשבון המשתמש שמריץ את הסימולציה אין הרשאה לקבל את מדיניות ההרשאות של אחד או יותר מהמשאבים שמשתתפים בסימולציה.
  • הגישה לפרטי החברות נדחתה: לחשבון המשתמש שמריץ את הסימולציה לא הייתה הרשאה להציג את החברים בקבוצה אחת או יותר שנכללות במדיניות ההרשאות המדומה.
  • תנאי לא נתמך: יש קישור תפקיד מותנה במדיניות ההרשאה שנבדקת. סימולטור המדיניות לא תומך בתנאים, לכן לא ניתן להעריך את הקישור.

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

שגיאות

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

יש כמה סוגים של שגיאות שסימולטור המדיניות עשוי לדווח עליהן:

  • שגיאות בפעולה: לא ניתן להריץ את הסימולציה.

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

    אם השגיאה הזו מופיעה מסיבה אחרת, נסו להריץ שוב את הסימולציה. אם עדיין לא ניתן להריץ את הסימולציה, אפשר לפנות לכתובת policy-simulator-feedback@google.com.

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

  • שגיאות שקשורות לסוג משאב לא נתמך: מדיניות ההרשאות המוצעת משפיעה על הרשאות שמשויכות לסוג משאב לא נתמך, שהכלי Policy Simulator לא יכול לבצע סימולציה לגביו. בתוצאות הסימולציה של הכלי Policy Simulator מופיעות ההרשאות האלה, כדי שתדעו אילו הרשאות לא ניתן היה לדמות.

גודל מקסימלי של הפעלה חוזרת של יומן

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

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

רמות התמיכה לסוגי משאבים

סימולטור המדיניות לא תומך בכל סוגי המשאבים בסימולציות. השינוי הזה משפיע על שינויי ההרשאות שהכלי יכול לדמות.

סוגי המשאבים שנתמכים

הכלי Policy Simulator תומך רק בסוגי המשאבים הבאים:

שירות סוגי המשאבים שנתמכים
Cloud Storage
  • buckets
Pub/Sub
  • snapshots
  • subscriptions
  • topics
Cloud SQL
  • backupRuns
  • databases
  • instances
  • sslCerts
  • users
Spanner
  • backups
  • backupOperations
  • databases
  • databaseOperations
  • instanceConfigs
  • instanceOperations
  • instances
  • sessions
מנהל המשאבים
  • folders
  • organizations
  • projects
Compute Engine
  • instances

הדמיה של גבולות גישה לפרטי כניסה

אתם יכולים להשתמש בגבולות גישה לפרטי כניסה כדי לצמצם (להגביל) את הרשאות ה-IAM שניתנות לפרטי כניסה עם תוקף קצר, כדי לגשת למשאבים של Cloud Storage. כדי לצמצם את היקף ההרשאות, משתמש או חשבון שירות (ברוקר האסימונים) מגדירים את ההרשאות הזמינות בקבוצת משאבים באסימון גישה עם היקף מצומצם, ואז מספקים את אסימון הגישה למשתמש או לחשבון שירות אחר (צרכן האסימונים).

לברוקר האסימון צריך להיות תפקיד שכולל את ההרשאות שניתנות לצרכן האסימון עם אסימון גישה עם היקף מצומצם. הסרת התפקיד הזה מ-Token Broker תגרום גם להסרת הגישה מ-Token Consumer. עם זאת, סימולטור המדיניות לא בודק איך שינויים בהרשאות של ברוקר האסימונים משפיעים על הגישה של צרכן האסימונים.

לדוגמה, נניח שלמשתמש מסוים הוקצה התפקיד Storage Legacy Bucket Reader (roles/storage.legacyBucketReader) במשאב באמצעות אסימון גישה עם היקף מצומצם שנוצר באמצעות Credential Access Boundary.

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

  • אם תדמו הסרה של התפקיד Storage Legacy Bucket Reader מתווך האסימונים, סימולטור המדיניות לא ידווח על אובדן גישה של המשתמש. באופן דומה, אם לא נעשה שימוש בגישה של ברוקר האסימונים תוך 90 ימים, הגישה שלו לא נכללת בסימולציה.

מידע נוסף זמין במאמר גבולות גישה של פרטי כניסה ל-Cloud Storage.

סוגי משאבים שלא נתמכים

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

אם שינוי מוצע במדיניות הרשאה כולל הרשאות לסוג משאב שלא נתמך, כלי סימולטור המדיניות מפרט את ההרשאות האלה בתוצאות הסימולציה כדי שתדעו אילו הרשאות לא ניתן היה לדמות. לדוגמה, סימולטור המדיניות לא תומך במודלים של AI Platform. לכן, אם מדיניות הרשאה מוצעת מסירה תפקיד עם ההרשאה aiplatform.models.list, התוצאות של הסימולציה הזו מציינות שלא הייתה אפשרות לדמות את ההרשאה aiplatform.models.list.

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