ההמלצות לגבי תפקידים עוזרות לכם לזהות הרשאות עודפות לחשבונות משתמשים ולהסיר אותן, וכך לשפר את הגדרות האבטחה של המשאבים.
סקירה כללית של המלצות לתפקידים
ההמלצות לתפקידים נוצרות על ידי שירות ההמלצות של IAM. הכלי להמלצות בנושא IAM הוא אחד מהכלים להמלצות שמוצעים ב-Recommender.
כל המלצה לתפקיד מציעה להסיר או להחליף תפקיד שנותן לחשבונות המשתמשים שלכם הרשאות עודפות. ההמלצות האלה עוזרות לכם לאכוף את העיקרון של הרשאות מינימליות, גם כשיש הרבה מהן. לשם כך הוספנו את התכונות הבאות:
כדי לזהות הרשאות עודפות, כלי ההמלצות של IAM משתמש בתובנות לגבי מדיניות. תובנות לגבי מדיניות הן ממצאים שמבוססים על ML בנוגע לשימוש בהרשאות של חשבון משתמש.
חלק מההמלצות משויכות גם לתובנות לגבי תנועה רוחבית. התובנות האלה מזהות תפקידים שמאפשרים לחשבונות שירות בפרויקט אחד להתחזות לחשבונות שירות בפרויקט אחר. מידע נוסף זמין במאמר בנושא איך נוצרות תובנות לגבי תנועה לרוחב.
איך נוצרות תובנות לגבי מדיניות
תובנות לגבי מדיניות מדגישות את ההרשאות בתפקידים של חשבון משתמש, שחשבון המשתמש לא משתמש בהן.
שירות ההמלצות של IAM יוצר תובנות לגבי מדיניות על ידי השוואה בין המספר הכולל של ההרשאות של גורם מרכזי לבין ההרשאות שבהן הגורם המרכזי השתמש ב-90 הימים האחרונים. אם התפקיד הוקצה לפני פחות מ-90 יום, הכלי להמלצות IAM בודק את השימוש בהרשאות של חשבון המשתמש מאז שהוקצה לו התפקיד.
יש כמה דרכים שבהן גורם ראשי יכול להשתמש בהרשאה:
באופן ישיר, על ידי קריאה ל-API שדורש את ההרשאה
לדוגמה, ה-method
roles.listב-IAM API בארכיטקטורת REST דורשת את ההרשאהiam.roles.list. כשמבצעים קריאה ל-methodroles.list, משתמשים בהרשאהiam.roles.list.באופן דומה, כשקוראים ל-method
testIamPermissionsשל משאב, משתמשים למעשה בכל ההרשאות שנבדקות.באופן עקיף, באמצעות מסוף Google Cloud לעבודה עם משאבי Google Cloud
לדוגמה, במסוף Google Cloud , אפשר לערוך מכונה וירטואלית (VM) של Compute Engine, אבל נדרשות הרשאות שונות בהתאם להגדרות שמשנים. עם זאת, במסוף מוצגות גם ההגדרות הקיימות, ולשם כך נדרשת ההרשאה
compute.instances.get. Google Cloudלכן, כשעורכים מופע של מכונה וירטואלית במסוף Google Cloud , משתמשים בהרשאה
compute.instances.get.
כדי לקבוע את ההרשאות שבהן נעשה שימוש בישות המורשית, שירות ההמלצות של IAM משתמש בנתוני גישה מצטברים של IAM. כדי ללמוד איך לייצא את הנתונים שבהם שירות ההמלצות של IAM משתמש כדי לספק את התובנות האלה, ראו ייצוא נתונים של המלצות לתפקידים.
כמו כן, הכלי להמלצות ב-IAM משתמש בלמידת מכונה כדי לזהות הרשאות בתפקיד הנוכחי של חשבון משתמש, שסביר להניח שהוא יזדקק להן בעתיד, גם אם הוא לא השתמש בהן לאחרונה. מידע נוסף מופיע בקטע תובנות לגבי מדיניות באמצעות למידת מכונה בדף הזה.
המערכת לא יוצרת תובנות לגבי מדיניות לכל תפקידי ה-IAM שמוקצים לחשבונות משתמשים. בקטע זמינות בדף הזה מוסבר למה יכול להיות שלתפקיד מסוים אין תובנה לגבי מדיניות.
מידע נוסף על ניהול תובנות לגבי מדיניות זמין במאמרים ניהול תובנות לגבי מדיניות בפרויקטים, בתיקיות ובארגונים וניהול תובנות לגבי מדיניות בקטגוריות של Cloud Storage.
תובנות לגבי מדיניות באמצעות למידת מכונה
במקרים מסוימים, יכול להיות שחשבון משתמש יזדקק להרשאות מסוימות שכלולות בתפקידים הנוכחיים שלו, אבל שהוא לא השתמש בהן לאחרונה. כדי לזהות את ההרשאות האלה, שירות ההמלצות של IAM משתמש במודל של למידת מכונה (ML) כשהוא יוצר תובנות לגבי מדיניות.
מודל למידת המכונה הזה מאומן על כמה קבוצות של אותות:
דפוסי שכיחות משותפת נפוצים בהיסטוריה שנצפתה: העובדה שמשתמש השתמש בהרשאות א', ב' ו-ג' בעבר מרמזת שאולי יש קשר בין א', ב' ו-ג' ושצריך את כולן כדי לבצע משימה ב- Google Cloud. אם מודל ה-ML יזהה את הדפוס הזה בתדירות גבוהה מספיק, בפעם הבאה שמשתמש אחר ישתמש בהרשאות א' וב', המודל יציע למשתמש הזה שהוא עשוי להזדקק גם להרשאה ג'.
ידע בתחום כפי שהוא מוצפן בהגדרות התפקידים: ב-IAM יש מאות תפקידים מוגדרים מראש שספציפיים לשירותים. אם תפקיד שהוגדר מראש מכיל קבוצה של הרשאות, זהו סימן חזק לכך שצריך להעניק את ההרשאות האלה יחד.
בנוסף לאותות האלה, המודל משתמש גם בהטמעה של מילים כדי לחשב את הדמיון הסמנטי בין ההרשאות. הרשאות שדומות מבחינה סמנטית יהיו קרובות זו לזו אחרי ההטמעה, ויש סיכוי גבוה יותר שהן יינתנו יחד. לדוגמה, המילים bigquery.datasets.get ו-bigquery.tables.list יהיו קרובות מאוד זו לזו אחרי ההטמעה.
כל הנתונים שמשמשים בצינור למידת מכונה של הכלי להמלצות IAM עברו k-אנונימיזציה, כלומר אי אפשר לזהות מחדש אנשים במערך הנתונים שעבר אנונימיזציה. כדי להשיג רמת אנונימיות כזו, אנחנו מסירים את כל הפרטים האישיים המזהים (PII), כמו מזהה המשתמש שקשור לכל דפוס שימוש בהרשאה. לאחר מכן, אנחנו מסירים את כל דפוסי השימוש שלא מופיעים מספיק פעמים ב- Google Cloud. המודל הגלובלי מאומן על הנתונים האנונימיים האלה.
אפשר להתאים אישית את המודל הגלובלי לכל ארגון באמצעות למידה משותפת (Federated), תהליך של למידת מכונה שמאמן מודלים של למידת מכונה בלי לייצא נתונים.
איך נוצרות המלצות לתפקידים
אם תובנה לגבי מדיניות מציינת שחשבון משתמש לא צריך את כל ההרשאות בתפקיד שלו, הכלי להמלצות של IAM בודק את התפקיד כדי לקבוע אם אפשר לבטל אותו, או אם יש תפקיד אחר שמתאים יותר. אם אפשר לבטל את התפקיד, הכלי IAM Recommender יוצר המלצה לביטול התפקיד. אם יש תפקיד אחר שמתאים יותר, הכלי להמלצות של IAM יוצר המלצה להחלפת התפקיד בתפקיד מוצע. התפקיד המוצע יכול להיות תפקיד חדש בהתאמה אישית, תפקיד קיים בהתאמה אישית או תפקיד מוגדר מראש אחד או יותר. למעט במקרה של המלצות לסוכני שירות, המלצה על תפקיד אף פעם לא מציעה שינוי שמגדיל את רמת הגישה של חשבון המשתמש.
ההמלצות לתפקידים נוצרות על סמך בקרת הגישה ב-IAM בלבד. הם לא מתייחסים לסוגים אחרים של בקרת גישה, כמו רשימות של בקרת גישה (ACL) ובקרת גישה מבוססת-תפקידים (RBAC) ב-Kubernetes. אם אתם משתמשים בסוגים אחרים של בקרת גישה, חשוב לנקוט משנה זהירות כשאתם בודקים את ההמלצות, ולחשוב איך אמצעי בקרת הגישה האלה קשורים לכללי המדיניות שלכם בנושא הרשאות.
בנוסף, לא נוצרות המלצות לתפקידים לכל תפקידי ה-IAM שמוענקים לחשבונות ראשיים. מידע נוסף על הסיבות לכך שייתכן שלא תהיה המלצה לתפקיד מסוים זמין במאמר הזה בקטע זמינות.
תקופת התצפית
תקופת התצפית של המלצה לתפקיד היא מספר הימים של נתוני השימוש בהרשאות שעליהם מבוססת ההמלצה.
תקופת התצפית המקסימלית להמלצות לגבי תפקידים היא 90 יום. כלומר, הכלי להמלצות של IAM משתמש בנתוני השימוש בהרשאות מ-90 הימים האחרונים לכל היותר כדי ליצור המלצות לתפקידים.
בנוסף, כלי ההמלצות של IAM לא מתחיל ליצור המלצות לתפקידים עד שיש לו נתונים על השימוש בהרשאות במשך מספר מסוים של ימים. משך הזמן הזה נקרא תקופת התצפית המינימלית. כברירת מחדל, תקופת התצפית המינימלית היא 90 יום, אבל כשמדובר בהמלצות לתפקידים ברמת הפרויקט, אפשר להגדיר אותה באופן ידני ל-30 או ל-60 יום. פרטים נוספים זמינים במאמר בנושא הגדרת יצירת המלצות לתפקידים. אם מגדירים את תקופת התצפית המינימלית לפחות מ-90 ימים, מקבלים המלצות מוקדם יותר, אבל יכול להיות שהדיוק של ההמלצות ייפגע.
אם חלף יותר זמן מתקופת ההמתנה המינימלית אבל פחות מ-90 ימים מאז שהתפקיד הוענק, תקופת ההמתנה היא משך הזמן שחלף מאז שהתפקיד הוענק.
תפקידים חדשים בהתאמה אישית בהמלצות לתפקידים
כשכלי ההמלצות של IAM מציע תפקידים חלופיים, הוא תמיד מציע תפקיד קיים בהתאמה אישית, או תפקיד מוגדר מראש אחד או יותר, שנראה שמתאימים יותר לצרכים של חשבון המשתמש.
אם שירות ההמלצות של IAM מזהה בארגון דפוס שימוש נפוץ בהרשאות שלא ממופה לתפקיד קיים שהוגדר מראש או לתפקיד בהתאמה אישית, הוא עשוי גם להמליץ ליצור תפקיד בהתאמה אישית חדש ברמת הפרויקט. התפקיד הזה בהתאמה אישית כולל רק את ההרשאות המומלצות. אתם יכולים לשנות את ההמלצה לתפקיד בהתאמה אישית על ידי הוספה או הסרה של הרשאות.
אם רוצים לאכוף את העיקרון של הרשאות מינימליות בצורה הכי מחמירה שאפשר, בוחרים את התפקיד החדש בהתאמה אישית. שירות ההמלצות של IAM יוצר את התפקיד בהתאמה אישית ברמת הפרויקט. באחריותכם לתחזק ולעדכן את התפקידים בהתאמה אישית בפרויקטים.
אם אתם מעדיפים להשתמש בתפקיד שמנוהל בשבילכם, אתם יכולים לבחור תפקיד מוגדר מראש. Google Cloud מעדכנת את התפקידים האלה באופן קבוע על ידי הוספה או הסרה של הרשאות. כדי לקבל עדכונים על השינויים האלה, אפשר להירשם לעדכונים בפיד החדשות של יומן השינויים של ההרשאות. כשבוחרים תפקיד מוגדר מראש, לחשבון המשתמש עדיין יש לפחות כמה הרשאות, ואולי מספר גדול של הרשאות, שהוא לא השתמש בהן.
שירות ההמלצות של IAM ממליץ על תפקידים חדשים בהתאמה אישית רק לתפקידים שמוקצים בפרויקט. הוא לא ממליץ על תפקידים חדשים בהתאמה אישית לתפקידים שניתנו במשאבים אחרים, כמו תיקיות או ארגונים.
בנוסף, הכלי להמלצות של IAM לא ממליץ על תפקידים חדשים בהתאמה אישית במקרים הבאים:
- בארגון שלכם כבר יש 100 תפקידים מותאמים אישית או יותר.
- בפרויקט כבר יש 25 תפקידים בהתאמה אישית או יותר.
שירות ההמלצות של IAM ממליץ על עד 5 תפקידים חדשים בהתאמה אישית ביום בכל פרויקט, ועל עד 15 תפקידים חדשים בהתאמה אישית בכל הארגון.
איך נוצרות תובנות לגבי תנועה רוחבית
תנועה רוחבית קורית כשלחשבון שירות בפרויקט אחד יש הרשאה להתחזות לחשבון שירות בפרויקט אחר. לדוגמה, יכול להיות שחשבון שירות נוצר בפרויקט א, אבל יש לו הרשאות להתחזות לחשבון שירות בפרויקט ב.
ההרשאות האלה יכולות לגרום להתחלת שרשרת של התחזות בפרויקטים שונים, שבגללה מוענקות לחשבונות משתמשים הרשאות גישה למשאבים בלי כוונה. לדוגמה, אם חשבון משתמש מתחזה לחשבון השירות בפרויקט א, הוא יכול להשתמש בחשבון השירות הזה כדי להתחזות לחשבון השירות בפרויקט ב. אם לחשבון השירות שבפרויקט ב יש הרשאה להתחזות לחשבונות שירות אחרים בפרויקטים אחרים בארגון, חשבון המשתמש הזה יכול להמשיך בהתחזות לחשבון שירות כדי לעבור מפרויקט לפרויקט ולקבל הרשאות לאורך הדרך.
שירות ההמלצות של IAM מזהה תובנות לגבי תנועה רוחבית על ידי זיהוי תפקידים שעומדים בקריטריונים הבאים:
- החשבון הראשי שקיבל את התפקיד הוא חשבון שירות שלא נוצר בפרויקט.
התפקיד כולל אחת מההרשאות הבאות, שמאפשרות לחשבון משתמש להתחזות לחשבון שירות:
iam.serviceAccounts.actAsiam.serviceAccounts.getAccessTokeniam.serviceAccounts.getOpenIdTokeniam.serviceAccounts.implicitDelegationiam.serviceAccounts.signBlobiam.serviceAccounts.signJwt
אם תפקיד עומד בקריטריונים האלה, שירות המלצות ב-IAM יוצר תובנה לגבי תנועה רוחבית עבור התפקיד. התובנה הזו מכילה מידע על יכולות ההתחזות של חשבון השירות, כולל אילו חשבונות שירות הוא יכול להתחזות אליהם והאם הוא השתמש בהרשאות התחזות ב-90 הימים האחרונים.
הכלי להמלצות IAM לא משתמש בתובנות לגבי תנועה רוחבית כדי ליצור המלצות חדשות לגבי תפקידים. הסיבה לכך היא שאם חשבון שירות משתמש בהרשאות ההתחזות שלו, הכלי להמלצות של IAM לא יכול להציע בבטחה את ההסרה שלהן. עם זאת, אם המלצה לתפקיד מציעה להסיר את ההרשאות האלה כי לא נעשה בהן שימוש, הכלי להמלצות IAM יקשר את התובנה לגבי תנועה לרוחב להמלצה הזו. הקישור הזה עוזר לכם לתת עדיפות להמלצות לתפקידים בחשבונות שירות שיש להם הרשאות התחזות חזקות ולא בשימוש בפרויקטים שונים.
מידע נוסף על ניהול תובנות לגבי תנועה רוחבית זמין במאמר ניהול תובנות לגבי תנועה רוחבית.
זמינות
תובנות לגבי מדיניות, תובנות לגבי תנועה רוחבית והמלצות לגבי תפקידים לא נוצרות לכל התפקידים שמוענקים לחשבונות משתמשים. כדאי לקרוא את הקטעים הבאים כדי להבין את התפקידים שעבורם נוצרות תובנות לגבי מדיניות, תובנות לגבי תנועה לרוחב והמלצות.
זמינות התובנות לגבי המדיניות
כדי שמערכת ההמלצות של IAM תוכל ליצור תובנה לגבי מדיניות של תפקיד, התנאים הבאים צריכים להתקיים:
מדיניות ההרשאה ב-IAM שמעניקה את התפקיד צריכה להיות מצורפת לאחד מהמשאבים הבאים:
- קטגוריה של Cloud Storage
- מערך נתונים ב-BigQuery
- פרויקט
- תיקייה
- ארגון
כלי ההמלצות של IAM יוצר תובנות לגבי מדיניות רק לתפקידים שמוקצים למשאבים האלה.
בקישור התפקיד שמעניק את התפקיד לא יכול להיות תנאי. שירות ההמלצות של IAM לא יוצר תובנות לגבי מדיניות בנושא קישורי תפקידים מותנים.
החשבון הראשי שניתן לו התפקיד צריך להיות אחד מסוגי החשבונות הראשיים הבאים:
- משתמש
- חשבון שירות
- קבוצה
allUsersallAuthenticatedUsers- ערכי נוחות של Cloud Storage
- חברות בקבוצות מיוחדות ב-BigQuery
אחד מהסוגים הבאים של זהויות מאוחדות:
- כל הזהויות במאגר זהויות של עומסי עבודה
- זהות יחידה במאגר זהויות של עומסי עבודה
- כל הזהויות במאגר זהויות של כוח עבודה
- זהות יחידה במאגר זהויות של כוח עבודה
כל הפודים של Google Kubernetes Engine שמשתמשים בחשבון שירות ספציפי של Kubernetes
פרטים על פורמט המזהה של כל סוג חשבון משתמש מופיעים במאמר מזהים של חשבונות משתמשים.
יכול להיות שיחלפו עד 10 ימים עד שכלי ההמלצות של IAM ייצור תובנות לגבי מדיניות עבור תפקיד חדש שהוקצה.
זמינות של תובנות לגבי תנועה רוחבית
תובנות לגבי תנועה רוחבית נוצרות עבור תפקידים שניתנים במשאבים הבאים:
- ארגונים
- תיקיות
- פרויקטים
- חשבונות שירות
זמינות של המלצות לתפקידים
כדי שמערכת IAM Recommender תיצור המלצה לתפקיד, התנאים הבאים צריכים להתקיים:
- התפקיד חייב להיות משויך לתובנה לגבי מדיניות. התובנה הזו לגבי המדיניות משמשת כבסיס להמלצה.
- התקופה שחלפה מאז שהתפקיד הוענק חייבת להיות ארוכה יותר מתקופת הבדיקה המינימלית. כך מוודאים שלכלי להמלצות בנושא IAM יש מספיק נתוני שימוש כדי להציג המלצה. כברירת מחדל, תקופת התצפית המינימלית היא 90 ימים, אבל אפשר להגדיר אותה ידנית ל-30 או ל-60 ימים. פרטים נוספים מופיעים במאמר בנושא הגדרת יצירת המלצות לתפקידים.
- אם הגורם המקבל (principal) שאליו מוקצה התפקיד הוא סוכן שירות, התפקיד חייב להיות בעלים, עריכה או צפייה. כלי ההמלצות של IAM לא יוצר המלצות לתפקידים עבור סוכני שירות עם תפקידים אחרים. פרטים נוספים זמינים במאמר המלצות לגבי תפקידים לסוכני שירות.
אם תפקיד מסוים קיבל הרשאות לאחרונה מדי או שאין לגביו תובנות, בעמודה הרשאות שנבדקו במסוף Google Cloud יופיע הסמל .
יש מקרים שבהם הכלי להמלצות של IAM לא יוצר המלצות לתפקיד, גם אם עבר מספיק זמן ולתפקיד יש תובנה שמשויכת אליו. יכולות להיות לכך כמה סיבות:
אין תפקידים מוגדרים מראש ב-IAM שמתאימים יותר מהתפקיד הנוכחי. אם לחשבון משתמש כבר יש תפקיד מוגדר מראש שמצמצם את ההרשאות שלו, או שכולל פחות הרשאות מתפקידים מוגדרים מראש אחרים, כלי ההמלצות של IAM לא יכול להמליץ על תפקיד מוגדר מראש אחר.
אפשר לצמצם את ההרשאות של הסובייקט על ידי יצירת תפקיד בהתאמה אישית בשבילו.
החשבון הראשי הוא סוכן שירות, והתפקיד הוא לא תפקיד בסיסי. הכלי להמלצות ב-IAM יוצר המלצות לתפקידים רק לסוכני שירות שיש להם תפקיד בסיסי (בעלים, עריכה או צפייה). פרטים נוספים זמינים במאמר המלצות לתפקידים של סוכני שירות.
אף חשבון משתמש אחר לא קיבל את התפקיד הבסיסי 'בעלים' בפרויקט. לפחות חשבון משתמש אחד צריך לקבל את התפקיד 'בעלים' (
roles/owner) בכל פרויקט. אם רק לישות מורשית אחת יש את התפקיד הזה, שירות ההמלצות של IAM לא ימליץ לבטל או להחליף את התפקיד.
במקרים כאלה, בעמודה הרשאות שנותחו במסוףGoogle Cloud מוצג השימוש בהרשאות של הגורם הראשי, אבל לא מופיע הסמל המלצה זמינה .
עדיפות וחומרה
העדיפות של ההמלצה ומידת החומרה של התובנה עוזרות לכם להבין את הדחיפות של ההמלצה או התובנה, ולתעדף בהתאם.
העדיפות של המלצות לתפקידים
להמלצות מוקצות רמות עדיפות על סמך הדחיפות שלהן.
רמות העדיפות נעות בין P1 (העדיפות הגבוהה ביותר) ל-P4 (העדיפות הנמוכה ביותר).
העדיפות של המלצה לתפקיד תלויה בתפקיד שאליו מתייחסת ההמלצה:
| פרטי ההמלצה | עדיפות | הסבר |
|---|---|---|
| המלצות לתפקידים שמעניקים גישה ציבורית לקטגוריות של Cloud Storage | P1 |
כל אחד באינטרנט יכול לגשת לקטגוריות שגלויות לכולם. הסרת הגישה הציבורית מאפשרת לכם לשלוט יותר בנתונים. |
| המלצות לתפקידים שמעניקים גישה ציבורית למערכי נתונים של BigQuery | P1 |
כל אחד באינטרנט יכול לגשת למערכי נתונים שנגישים לכולם. הסרת הגישה הציבורית מאפשרת לכם יותר שליטה בנתונים. |
| המלצות לתפקידים בסיסיים (בעלים, עריכה וצפייה) שניתנים בפרויקט, בתיקייה או בארגון | P2 |
לתפקידים בסיסיים יש הרבה הרשאות, ויישום של ההמלצות לגבי התפקידים האלה יכול לצמצם מאוד את ההרשאות המיותרות. |
| המלצות שלא מעניקות גישה ציבורית או תפקידים בסיסיים | P4 |
ההמלצות האלה עוזרות לצמצם את ההרשאות המיותרות, אבל הן לא מסירות גישה ציבורית או תפקידים בסיסיים עם הרשאות רחבות מדי, ולכן הן בעדיפות נמוכה יותר. |
חומרת התובנה
לתובנות מוקצים רמות חומרה על סמך הדחיפות שלהן. רמות החומרה יכולות להיות LOW, MEDIUM, HIGH או CRITICAL.
מידת החומרה של תובנה לגבי מדיניות תלויה בתפקיד שאליו מתייחסת התובנה:
| פרטי התובנה | חוּמרה | הסבר |
|---|---|---|
| תובנות לגבי תפקידים שמעניקים גישה ציבורית לקטגוריות של Cloud Storage | CRITICAL |
כל אחד באינטרנט יכול לגשת לקטגוריות שגלויות לכולם. הסרת הגישה הציבורית מאפשרת לכם יותר שליטה בנתונים. |
| תובנות לגבי תפקידים שמעניקים גישה ציבורית למערכי נתונים ב-BigQuery | CRITICAL |
כל אחד באינטרנט יכול לגשת למערכי נתונים שנגישים לכולם. הסרת הגישה הציבורית מאפשרת לכם לשלוט יותר בנתונים. |
| תובנות לגבי תפקידים בסיסיים (בעלים, עריכה וצפייה) שמוקצים בפרויקט, בתיקייה או בארגון | HIGH |
לתפקידים בסיסיים יש הרבה הרשאות, והתובנות לגבי התפקידים האלה יכולות לעזור לכם לצמצם באופן משמעותי את ההרשאות המיותרות. |
| תובנות שלא מעניקות גישה ציבורית או תפקידים בסיסיים | LOW |
התובנות האלה אמנם מדגישות הרשאות עודפות, אבל הן לא קשורות לגישה ציבורית או לתפקידים בסיסיים עם הרשאות רחבות, ולכן הן בעדיפות נמוכה יותר. |
כל התובנות לגבי תנועה רוחבית הן ברמת חומרה LOW.
איך מיישמים המלצות לגבי תפקידים
שירות ההמלצות של IAM לא מיישם המלצות באופן אוטומטי. במקום זאת, צריך לעיין בהמלצות ולהחליט אם ליישם אותן או לבטל אותן.
יש כמה דרכים לפעול לפי ההמלצות:
- יישום או דחייה של המלצות: אתם יכולים ליישם המלצות כדי להחליף או להסיר תפקידים, או לדחות המלצות שאתם לא רוצים ליישם. במדריכים הבאים מוסבר איך לבדוק, ליישם ולבטל המלצות:
- תיקון באמצעות Privileged Access Manager: אם קיבלתם המלצה להסיר או להחליף תפקיד של קבוצה, אתם יכולים לתקן את ההרשאות המוגזמות על ידי החלפת התפקיד הקבוע בהרשאה ב-Privileged Access Manager שמספקת גישה זמנית על פי דרישה. פרטים נוספים מופיעים במאמר בנושא תיקון הרשאות מוגזמות באמצעות Privileged Access Manager. התכונה הזו נמצאת בגרסת טרום-השקה.
רישום ביומן ביקורת
כשמיישמים המלצה או מבטלים אותה, הכלי להמלצות של IAM יוצר רשומה ביומן. אפשר לראות את הרשומות האלה בהיסטוריית ההמלצות, או לראות אותן ביומני הביקורת Google Cloud .
סוגי משנה של המלצות לתפקידים
ההמלצות לתפקידים מחולקות לכמה סוגי משנה שונים על סמך הפעולה שהן ממליצות עליה. אם אתם משתמשים ב-CLI של gcloud או ב-REST API, אתם יכולים להשתמש בסוגי המשנה האלה כדי לסנן את ההמלצות.
| סוג משנה | תיאור |
|---|---|
REMOVE_ROLE |
המלצה להסיר את התפקיד של חשבון המשתמש ברמת הפרויקט, התיקייה או הארגון. |
REMOVE_ROLE_BIGQUERY_DATASET |
המלצה להסרת התפקיד של החשבון הראשי ברמת מערך הנתונים. |
REMOVE_ROLE_STORAGE_BUCKET |
המלצה להסרת התפקיד של החשבון הראשי ברמת הקטגוריה. |
REPLACE_ROLE |
המלצה להחליף את התפקיד של חשבון המשתמש ברמת הפרויקט, התיקייה או הארגון בתפקיד עם פחות הרשאות. התחליף המומלץ יכול להיות תפקיד קיים בהתאמה אישית או תפקיד מוגדר מראש אחד או יותר. |
REPLACE_ROLE_CUSTOMIZABLE |
המלצה להחליף את התפקיד של חשבון המשתמש בתפקיד חדש בהתאמה אישית עם פחות הרשאות מהתפקיד הנוכחי. |
REPLACE_ROLE_BIGQUERY_DATASET |
המלצה להחליף את התפקיד של החשבון הראשי ברמת מערך הנתונים בתפקיד עם פחות הרשאות. התפקיד המומלץ יכול להיות תפקיד קיים בהתאמה אישית או תפקיד מוגדר מראש אחד או יותר. |
REPLACE_ROLE_STORAGE_BUCKET |
המלצה להחליף את התפקיד של החשבון הראשי ברמת הדלי בתפקיד עם פחות הרשאות. התפקיד המומלץ יכול להיות תפקיד קיים בהתאמה אישית או תפקיד מוגדר מראש אחד או יותר. |
SERVICE_AGENT_WITH_DEFAULT_ROLE |
המלצה להחליף את התפקיד 'בעלים', 'עריכה' או 'צפייה' של סוכן שירות בתפקיד שהוקצה אוטומטית לחשבון השירות כשהוא נוצר. מידע נוסף זמין במאמר בנושא המלצות לתפקידים של סוכני שירות. |
SERVICE_AGENT_WITHOUT_DEFAULT_ROLE |
המלצה להחליף את התפקיד 'בעלים', 'עריכה' או 'צפייה' של סוכן שירות בתפקיד עם פחות הרשאות. מידע נוסף זמין במאמר בנושא המלצות לתפקידים של סוכני שירות. |
המלצות לתפקידים של סוכני שירות
לגבי סוכני שירות, שירות ההמלצות של IAM מספק המלצות רק לגבי תפקידים בסיסיים (בעלים, עריכה או צפייה).
ההמלצות לסוכני שירות מחולקות לשני סוגי משנה של המלצות.
SERVICE_AGENT_WITH_DEFAULT_ROLE
כשיוצרים סוכני שירות מסוימים, הם מקבלים באופן אוטומטי תפקיד של סוכן שירות כדי להבטיח שהשירותים שלכם ב- Google Cloud יפעלו כמו שצריך. אם מחליפים את התפקיד הזה בתפקיד בסיסי (בעלים, עריכה או צפייה), יכול להיות שהמלצה על תפקיד תציע לשחזר את התפקיד המקורי של סוכן השירות כדי להסיר הרשאות מיותרות, גם אם לתפקיד של סוכן השירות יש הרשאות שלא כלולות בתפקיד הבסיסי. ההמלצות האלה מסוג משנה SERVICE_AGENT_WITH_DEFAULT_ROLE. הם עוזרים לכם להסיר בבטחה הרשאות מיותרות, תוך הקפדה על כך שכל השירותים יפעלו בצורה תקינה. Google Cloud
SERVICE_AGENT_WITH_DEFAULT_ROLE המלצות הן הסוג היחיד של המלצות שעשויות להציע תפקידים עם הרשאות שלא נכללות בתפקיד הנוכחי.
SERVICE_AGENT_WITHOUT_DEFAULT_ROLE
אם לסוכן שירות לא מוקצה תפקיד באופן אוטומטי בזמן היצירה, ההמלצות לגבי סוכן השירות מבוססות אך ורק על ההרשאות שסוכן השירות משתמש בהן. ההמלצות האלה הן מסוג משנה SERVICE_AGENT_WITHOUT_DEFAULT_ROLE.
המלצות לתפקידים ב-Security Command Center
אם יש לכם את מהדורת Premium או Enterprise של Security Command Center, תוכלו לראות חלק מסוגי המשנה של המלצות לתפקידים כממצאים ב-Security Command Center. כל סוג משנה משויך לגלאי:
| סוג משנה של המלצה | קטגוריית התוצאות |
|---|---|
REMOVE_ROLE |
Unused IAM role |
REPLACE_ROLE |
IAM role has excessive permissions |
SERVICE_AGENT_WITH_DEFAULT_ROLE |
Service agent role replaced with basic role |
SERVICE_AGENT_WITHOUT_DEFAULT_ROLE |
Service agent granted basic role |
מידע נוסף על צפייה בהמלצות לתפקידים ב-Security Command Center זמין במאמר IAM recommender במסמכי התיעוד של Security Command Center.
תמחור
המלצות לתפקידים ברמת הפרויקט, ברמת התיקייה וברמת הארגון עבור תפקידים בסיסיים זמינות ללא תשלום.
התכונות המתקדמות הבאות של הכלי להמלצות בנושא IAM זמינות בהפעלות ברמת הפרויקט או ברמת הארגון של מהדורות Premium או Enterprise של Security Command Center:
- המלצות לתפקידים שאינם בסיסיים
- המלצות לגבי תפקידים שניתנו במשאבים שאינם ארגונים, תיקיות ופרויקטים – לדוגמה, המלצות לגבי תפקידים שניתנו בקטגוריות של Cloud Storage
- המלצות ליצירת תפקידים בהתאמה אישית
- תובנות לגבי המדיניות
- תובנות לגבי תנועה רוחבית
מידע נוסף זמין במאמר שאלות בנושא חיוב.
דוגמאות להמלצות לתפקידים
בדוגמאות הבאות מוצגים סוגי ההמלצות שאתם יכולים לקבל.
ביטול תפקיד קיים
למשתמש my-user@example.com הוענק התפקיד Browser בפרויקט.
התפקיד 'דפדפן' כולל שש הרשאות שמאפשרות למשתמש לראות משאבים בפרויקט. עם זאת, ב-90 הימים האחרונים, my-user@example.com לא צפה באף משאב.
לכן, הכלי להמלצות ב-IAM יוצר המלצה לגבי תפקיד, ומציע לבטל את התפקיד Browser (דפדפן) עבור my-user@example.com:
המסוף

gcloud
{
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/86c14538-dcfd-4326-afe5-ee8ac921e06a"
}
],
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/browser"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project"
}
]
}
],
"overview": {
"member": "user:my-user@example.com",
"removedRole": "roles/browser",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012"
}
},
"description": "This role has not been used during the observation window.",
"etag": "\"9fc3241da8bfab51\"",
"lastRefreshTime": "2022-05-20T07:00:00Z",
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fe512038-5455-49g1-8f9c-752e31c8c154",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 6
}
}
},
"priority": "P4",
"recommenderSubtype": "REMOVE_ROLE",
"stateInfo": {
"state": "ACTIVE"
}
}
REST
{
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fe512038-5455-49g1-8f9c-752e31c8c154",
"description": "This role has not been used during the observation window.",
"lastRefreshTime": "2022-05-20T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 6
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/browser"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"member": "user:my-user@example.com",
"removedRole": "roles/browser"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "\"9fc3241da8bfab51\"",
"recommenderSubtype": "REMOVE_ROLE",
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/86c14538-dcfd-4326-afe5-ee8ac921e06a"
}
],
"priority": "P4"
}
החלפת תפקיד קיים
לחשבון שירות הוקצה התפקיד 'עריכה' (roles/editor) בפרויקט.
התפקיד הבסיסי הזה כולל יותר מ-3,000 הרשאות ומעניק גישה נרחבת לפרויקט. עם זאת, במהלך 90 הימים האחרונים, חשבון השירות השתמש רק בחלק מההרשאות האלה.
לכן, הכלי להמלצות ב-IAM יוצר המלצה לתפקיד שמציעה לבטל את התפקיד 'עריכה' ולהחליף אותו בשילוב של שני תפקידים אחרים, וכך להסיר אלפי הרשאות מיותרות:
המסוף

gcloud
{
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/3d4ef3d6-bdf0-4330-975d-c65cb929c44d"
}
],
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"path": "/iamPolicy/bindings/*/members/-",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/iam.serviceAccountUser"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"value": "user:my-user@example.com"
},
{
"action": "add",
"path": "/iamPolicy/bindings/*/members/-",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/storage.objectAdmin"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"value": "user:my-user@example.com"
},
{
"action": "remove",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/editor"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project"
}
]
}
],
"overview": {
"addedRoles": [
"roles/iam.serviceAccountUser",
"roles/storage.objectAdmin"
],
"member": "user:my-user@example.com",
"minimumObservationPeriodInDays": "0",
"removedRole": "roles/editor",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012"
}
},
"description": "Replace the current role with smaller predefined roles to cover the permissions needed.",
"etag": "\"0da9a354c2a83d96\"",
"lastRefreshTime": "2022-06-22T07:00:00Z",
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/4637db3d-dba5-45eb-95ac-b4ee4b4cd14e",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 2998
}
}
},
"priority": "P2",
"recommenderSubtype": "REPLACE_ROLE",
"stateInfo": {
"state": "ACTIVE"
}
}
REST
{
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/4637db3d-dba5-45eb-95ac-b4ee4b4cd14e",
"description": "Replace the current role with smaller predefined roles to cover the permissions needed.",
"lastRefreshTime": "2022-06-22T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 2998
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/-",
"value": "user:my-user@example.com",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/iam.serviceAccountOwner"
}
},
{
"action": "add",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/-",
"value": "user:my-user@example.com",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/storage.objectAdmin"
}
},
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/editor"
}
}
]
}
],
"overview": {
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"member": "user:my-user@example.com",
"removedRole": "roles/editor",
"addedRoles": [
"roles/iam.serviceAccountUser",
"roles/storage.objectAdmin"
],
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "\"0da9a354c2a83d96\"",
"recommenderSubtype": "REPLACE_ROLE",
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/3d4ef3d6-bdf0-4330-975d-c65cb929c44d"
}
],
"priority": "P2"
}
יצירת תפקיד בהתאמה אישית
למשתמש my-user@example.com הוענק התפקיד Cloud Trace Admin (roles/cloudtrace.admin) בפרויקט. התפקיד כולל יותר מ-10 הרשאות, אבל תובנה לגבי מדיניות מציינת שבמהלך 90 הימים האחרונים, my-user@example.com השתמש רק ב-4 מתוך ההרשאות האלה.
לכן, הכלי להמלצות ב-IAM יוצר המלצה לתפקיד ומציע ליצור תפקיד בהתאמה אישית שכולל רק את ההרשאות שmy-user@example.com השתמש בהן בפועל:
המסוף

gcloud
סוג המשנה REPLACE_ROLE_CUSTOMIZABLE מציין שמערכת ההמלצות של IAM ממליצה ליצור תפקיד בהתאמה אישית עם ההרשאות שנעשה בהן שימוש. כדי לראות את ההרשאות שהיו בשימוש, צריך לקבל את תובנות המדיניות המשויכות.
{
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/2799dc04-b12e-4cf6-86aa-d81907d31f58"
}
],
"associatedResourceNames": [
"//cloudresourcemanager.googleapis.com/projects/123456789012"
],
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"path": "/iamPolicy/bindings/*/members/-",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/cloudtrace.user"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"value": "user:my-user@example.com"
},
{
"action": "remove",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/cloudtrace.admin"
},
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"resourceType": "cloudresourcemanager.googleapis.com/Project"
}
]
}
],
"overview": {
"minimumObservationPeriodInDays": "0"
}
},
"description": "Replace the current role with a smaller role to cover the permissions needed.",
"etag": "\"c7f57a4725d32d66\"",
"lastRefreshTime": "2022-06-22T07:00:00Z",
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/ba1fc977-fddd-3856-a829-f69649ae8075",
"originalContent": {},
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {},
"revokedIamPermissionsCount": 1
}
},
"priority": "P4",
"recommenderSubtype": "REPLACE_ROLE_CUSTOMIZABLE",
"stateInfo": {
"state": "ACTIVE"
},
"targetResources": [
"//cloudresourcemanager.googleapis.com/projects/123456789012"
]
}
REST
סוג המשנה REPLACE_ROLE_CUSTOMIZABLE מציין שמערכת IAM Recommender ממליצה ליצור תפקיד בהתאמה אישית עם ההרשאות שנעשה בהן שימוש. כדי לראות את ההרשאות שהיו בשימוש, צריך לקבל את תובנות המדיניות המשויכות.
{
"name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/ba1fc977-fddd-3856-a829-f69649ae8075",
"description": "Replace the current role with a smaller role to cover the permissions needed.",
"lastRefreshTime": "2022-06-22T07:00:00Z",
"primaryImpact": {
"category": "SECURITY",
"securityProjection": {
"details": {
"revokedIamPermissionsCount": 1
}
}
},
"content": {
"operationGroups": [
{
"operations": [
{
"action": "add",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/-",
"value": "user:my-user@example.com",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/role": "roles/cloudtrace.user"
}
},
{
"action": "remove",
"resourceType": "cloudresourcemanager.googleapis.com/Project",
"resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
"path": "/iamPolicy/bindings/*/members/*",
"pathFilters": {
"/iamPolicy/bindings/*/condition/expression": "",
"/iamPolicy/bindings/*/members/*": "user:my-user@example.com",
"/iamPolicy/bindings/*/role": "roles/cloudtrace.admin"
}
}
]
}
],
"overview": {
"minimumObservationPeriodInDays": "0"
}
},
"stateInfo": {
"state": "ACTIVE"
},
"etag": "\"c7f57a4725d32d66\"",
"recommenderSubtype": "REPLACE_ROLE_CUSTOMIZABLE",
"associatedInsights": [
{
"insight": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/2799dc04-b12e-4cf6-86aa-d81907d31f58"
}
],
"priority": "P4"
}
ההמלצה לתפקיד מציעה גם אפשרות אחרת: להחליף את התפקיד הקיים בתפקיד Cloud Trace User (roles/cloudtrace.user). התפקיד המוגדר מראש הזה כולל קצת פחות הרשאות מהתפקיד Cloud Trace Admin.
החלפת תפקיד בהרשאות שמוצעות על ידי למידת מכונה
לחשבון שירות הוקצה התפקיד 'עריכה' (roles/editor) בפרויקט.
התפקיד הבסיסי הזה כולל יותר מ-3,000 הרשאות ומעניק גישה נרחבת לפרויקט. עם זאת, תובנה לגבי מדיניות מציינת שבמהלך 90 הימים האחרונים, חשבון השירות השתמש בפחות מ-10 הרשאות.
בנוסף, התובנה לגבי המדיניות מדגישה כמה הרשאות שחשבון השירות כנראה יצטרך בעתיד. כלי ההמלצות של IAM זיהה את ההרשאות האלה באמצעות למידת מכונה.
שירות ההמלצות של IAM יוצר המלצה לתפקיד, ומציע לבטל את התפקיד Editor ולהחליף אותו בתפקיד Storage Object Admin (roles/storage.objectAdmin), שמעניק שליטה מלאה באובייקטים בקטגוריה של Cloud Storage. השינוי הזה מסיר אלפי הרשאות מיותרות, אבל עדיין כולל את ההרשאות שחשבון השירות השתמש בהן ואת ההרשאות שסביר שחשבון השירות יזדקק להן בעתיד:
המסוף
בכלי להמלצות בנושא IAM נעשה שימוש בסמל למידת מכונה
כדי לזהות הרשאות שנוספו על סמך למידת המכונה של הכלי ולא על סמך השימוש בהרשאות.
בדוגמה הזו, ההרשאה resourcemanager.projects.get הומלצה על סמך למידת מכונה:

gcloud
הרשאות שנוספו על סמך למידת מכונה של הכלי להמלצות IAM ולא על סמך השימוש בהרשאות לא מופיעות בהמלצה עצמה. במקום זאת, הם מפורטים בתובנות לגבי המדיניות שמשויכות להמלצה. כל ההרשאות שמבוססות על ML מפורטות בשדה inferredPermissions של התובנה. בדוגמה הזו, ההרשאה resourcemanager.projects.get
הומלצה על סמך למידת מכונה:
associatedRecommendations:
- recommendation: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/0573b702-96a5-4622-a916-c762e7b0731f
category: SECURITY
content:
condition:
description: ''
expression: ''
location: ''
title: ''
currentTotalPermissionsCount: '5069'
exercisedPermissions:
- permission: storage.objects.create
- permission: storage.objects.delete
- permission: storage.objects.get
- permission: storage.objects.list
inferredPermissions:
- permission: resourcemanager.projects.get
member: serviceAccount:my-service-account@my-project.iam.gserviceaccount.com
role: roles/editor
description: 4 of the permissions in this role binding were used in the past 90 days.
etag: '"d3cdec23cc712bd0"'
insightSubtype: PERMISSIONS_USAGE
lastRefreshTime: '2020-07-11T07:00:00Z'
name: projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/0d3ce433-f067-4e78-b6ae-03d7d1f6f040
observationPeriod: 7776000s
stateInfo:
state: ACTIVE
targetResources:
- //cloudresourcemanager.googleapis.com/projects/123456789012
severity: HIGH
כדי לקבל תובנה לגבי מדיניות, אפשר לעיין באחד מהמאמרים הבאים:
REST
הרשאות שנוספו על סמך למידת מכונה של הכלי להמלצות IAM ולא על סמך השימוש בהרשאות לא מופיעות בהמלצה עצמה. במקום זאת, הם מפורטים בתובנות לגבי המדיניות שמשויכות להמלצה. כל ההרשאות שמבוססות על ML מפורטות בשדה inferredPermissions של התובנה. בדוגמה הזו, ההרשאה resourcemanager.projects.get
הומלצה על סמך למידת מכונה:
{
"name": "projects/123456789012/locations/global/insightTypes/google.iam.policy.Insight/insights/07841f74-02ce-4de8-bbe6-fc4eabb68568",
"description": "4 of the permissions in this role binding were used in the past 90 days.",
"content": {
"role": "roles/editor",
"member": "serviceAccount:my-service-account@my-project.iam.gserviceaccount.com",
"condition": {
"expression": "",
"title": "",
"description": "",
"location": ""
},
"exercisedPermissions": [
{
"permission": "storage.objects.create"
},
{
"permission": "storage.objects.delete"
},
{
"permission": "storage.objects.get"
},
{
"permission": "storage.objects.list"
}
],
"inferredPermissions": [
{
"permission": "resourcemanager.projects.get"
}
],
"currentTotalPermissionsCount": "5069"
},
"lastRefreshTime": "2020-07-12T07:00:00Z",
"observationPeriod": "7776000s",
"stateInfo": {
"state": "ACTIVE"
},
"category": "SECURITY",
"associatedRecommendations": [
{
"recommendation": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/b1932220-867d-43d1-bd74-fb95876ab656"
}
],
"targetResources": [
"//cloudresourcemanager.googleapis.com/projects/123456789012"
],
"insightSubtype": "PERMISSIONS_USAGE",
"etag": "\"d3cdec23cc712bd0\"",
"severity": "HIGH"
}
כדי לקבל תובנה לגבי מדיניות, אפשר לעיין באחד מהמאמרים הבאים:
המאמרים הבאים
- שיטות מומלצות לשימוש בהמלצות לגבי תפקידים
- עיון בהמלצות לתפקידים ויישומן בפרויקטים, בתיקיות ובארגונים
- בדיקה ויישום של ההמלצות לגבי תפקידים בקטגוריות של Cloud Storage
- בדיקה ויישום של המלצות לתפקידים בערכות נתונים ב-BigQuery
- מידע נוסף על שירות ההמלצות
- הסבר על תפקידים מוגדרים מראש ועל תפקידים בהתאמה אישית ב-IAM.