בדף הזה מוסבר איך לנהל תובנות לגבי מדיניות ברמת הקטגוריה, שהן ממצאים מבוססי-למידת מכונה לגבי השימוש בהרשאות בקטגוריות של Cloud Storage. תובנות לגבי מדיניות יכולות לעזור לכם לזהות אילו חשבונות משתמשים קיבלו הרשאות שהם לא צריכים.
הדף הזה מתמקד בתובנות לגבי מדיניות בנושא קטגוריות. בנוסף, הכלי Recommender מציע תובנות לגבי מדיניות לסוגי המשאבים הבאים:
לפעמים תובנות לגבי מדיניות ברמת הקטגוריה מקושרות להמלצות לגבי תפקידים. ההמלצות לתפקידים מציעות פעולות שאפשר לבצע כדי לפתור את הבעיות שזוהו בתובנות לגבי מדיניות ברמת מאגר המידע.
לפני שמתחילים
-
מפעילים את Recommender API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (
roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאהserviceusage.services.enable. איך מקצים תפקידים - כדאי להכיר את ההמלצות לגבי תפקידים ב-IAM.
- מוודאים שיש לכם הפעלה ברמת הארגון או ברמת הפרויקט של רמת Premium או Enterprise ב-Security Command Center. מידע נוסף זמין במאמר שאלות בנושא חיוב.
- אופציונלי: אפשר לקרוא על תובנות בשירות ההמלצות.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לניהול תובנות לגבי מדיניות ברמת הבאקט, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
- אדמין באחסון (
roles/storage.admin) -
ניהול תובנות לגבי מדיניות ברמת הקטגוריה באמצעות ה-CLI של gcloud או API בארכיטקטורת REST:
Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות לניהול תובנות לגבי מדיניות ברמת הקטגוריה. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי לנהל תובנות לגבי מדיניות ברמת הדלי, נדרשות ההרשאות הבאות:
-
כדי לראות תובנות לגבי מדיניות ברמת הקטגוריה:
-
recommender.iamPolicyInsights.get -
recommender.iamPolicyInsights.list
-
-
כדי לשנות את התובנות לגבי מדיניות ברמת הקטגוריה:
recommender.iamPolicyInsights.update -
כדי לנהל תובנות לגבי מדיניות ברמת ה-bucket במסוף Google Cloud :
-
resourcemanager.projects.get -
storage.buckets.list
-
-
אפשר לנהל תובנות לגבי מדיניות ברמת הקטגוריה באמצעות ה-CLI של gcloud או API בארכיטקטורת REST:
serviceusage.services.use
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הצגת תובנות לגבי מדיניות ברמת הקטגוריה
כדי להציג ברשימה את כל התובנות לגבי מדיניות ברמת הקטגוריה בפרויקט, משתמשים באחת מהשיטות הבאות:המסוף
-
נכנסים לדף Buckets במסוף Google Cloud .
-
מחפשים את העמודה תובנות בנושא אבטחה בטבלה. אם העמודה תובנות בנושא אבטחה לא מוצגת, לוחצים על אפשרויות להצגת עמודות ובוחרים באפשרות תובנות בנושא אבטחה.
בעמודה הזו מוצג סיכום של כל התובנות לגבי המדיניות של מאגר הנתונים. בכל סיכום מצוין המספר הכולל של הרשאות עודפות לכל התפקידים שניתנו בקטגוריה הזו.
-
מוצאים את הקטגוריה שרוצים לראות את התובנות לגביה ולוחצים על סיכום התובנות לגבי המדיניות באותה השורה. הפעולה הזו פותחת את החלונית Security recommendations, שבה מפורטים כל החשבונות הראשיים שיש להם תפקיד בדלי, התפקידים שלהם ותובנות לגבי מדיניות שקשורות לתפקידים האלה.
בטבלה הזו, תובנות לגבי מדיניות הן מהצורה
EXCESS/TOTAL excess permissions, כאשרEXCESSהוא מספר ההרשאות בתפקיד שחשבון המשתמש לא צריך, ו-TOTALהוא המספר הכולל של ההרשאות בתפקיד.
gcloud
משתמשים בפקודה gcloud recommender
insights list כדי לראות את כל התובנות לגבי מדיניות ברמת הקטגוריה בפרויקט.
לפני שמריצים את הפקודה, מחליפים את הערכים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שרוצים לראות את התובנות לגביו. -
LOCATION: המיקום של הקטגוריות שרוצים להציג את התובנות לגביהן.
gcloud recommender insights list --insight-type=google.iam.policy.Insight \ --project=PROJECT_ID \ --location=LOCATION\ --filter="insightSubtype:PERMISSIONS_USAGE_STORAGE_BUCKET"
בפלט מפורטים כל התובנות לגבי המדיניות ברמת ה-bucket בפרויקט במיקום שצוין. לדוגמה:
INSIGHT_ID CATEGORY INSIGHT_STATE LAST_REFRESH_TIME SEVERITY INSIGHT_SUBTYPE DESCRIPTION 00dd7eb5-15c2-4fb3-a9b2-1a85f842462b SECURITY ACTIVE 2022-05-24T07:00:00Z CRITICAL PERMISSIONS_USAGE_STORAGE_BUCKET 2 of the permissions in this role binding were used in the past 90 days. 04307297-f57c-416d-9323-38abac450db0 SECURITY ACTIVE 2022-05-24T07:00:00Z LOW PERMISSIONS_USAGE_STORAGE_BUCKET 2 of the permissions in this role binding were used in the past 90 days. 04845da5-74ba-46b4-a0f3-47d83095c261 SECURITY ACTIVE 2022-05-24T07:00:00Z CRITICAL PERMISSIONS_USAGE_STORAGE_BUCKET 1 of the permissions in this role binding were used in the past 90 days. 0a39f643-d7a8-4c11-b490-fecd74290fb5 SECURITY ACTIVE 2022-05-24T07:00:00Z LOW PERMISSIONS_USAGE_STORAGE_BUCKET 2 of the permissions in this role binding were used in the past 90 days. 0a4cee48-777b-4dea-a2b0-702b70da4b6f SECURITY ACTIVE 2022-05-24T07:00:00Z CRITICAL PERMISSIONS_USAGE_STORAGE_BUCKET 0 of the permissions in this role binding were used in the past 90 days. 0b2d147c-b26e-4afe-8fab-449c6e793750 SECURITY ACTIVE 2022-05-24T07:00:00Z LOW PERMISSIONS_USAGE_STORAGE_BUCKET 0 of the permissions in this role binding were used in the past 90 days. 0b5eacc5-ba9a-45f6-aea2-bcdc33ce2a2d SECURITY ACTIVE 2022-05-24T07:00:00Z LOW PERMISSIONS_USAGE_STORAGE_BUCKET 1 of the permissions in this role binding were used in the past 90 days. 0bb3032d-721c-44e8-b464-5293f235281c SECURITY ACTIVE 2022-05-24T07:00:00Z LOW PERMISSIONS_USAGE_STORAGE_BUCKET 3 of the permissions in this role binding were used in the past 90 days.
REST
ה-method insights.list של Recommender API מפרטת את כל התובנות לגבי מדיניות ברמת הקטגוריה בפרויקט.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שרוצים לראות את התובנות לגביו. -
LOCATION: המיקום של הקטגוריות שרוצים להציג את התובנות לגביהן.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights?filter=insightSubtype%20%3D%20PERMISSIONS_USAGE_STORAGE_BUCKET
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
בתגובה מוצגים כל התובנות לגבי מדיניות ברמת ה-bucket בפרויקט במיקום שצוין. לדוגמה:
{
"insights": [
{
"name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
"description": "2 of the permissions in this role binding were used in the past 90 days.",
"content": {
"role": "roles/storage.legacyBucketReader",
"member": "allUsers",
"condition": {
"expression": "",
"title": "",
"description": "",
"location": ""
},
"exercisedPermissions": [
{
"permission": "storage.buckets.get"
},
{
"permission": "storage.objects.list"
}
],
"inferredPermissions": [],
"currentTotalPermissionsCount": "3"
},
"lastRefreshTime": "2022-05-24T07:00:00Z",
"observationPeriod": "7772400s",
"stateInfo": {
"state": "ACTIVE"
},
"category": "SECURITY",
"associatedRecommendations": [
{
"recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
}
],
"targetResources": [
"//storage.googleapis.com/bucket-1"
],
"insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
"etag": "\"2a8784e529b80aea\"",
"severity": "CRITICAL"
},
{
"name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/04307297-f57c-416d-9323-38abac450db0",
"description": "2 of the permissions in this role binding were used in the past 90 days.",
"content": {
"role": "roles/storage.legacyBucketReader",
"member": "projectViewer:my-project",
"condition": {
"expression": "",
"title": "",
"description": "",
"location": ""
},
"exercisedPermissions": [
{
"permission": "storage.buckets.get"
},
{
"permission": "storage.objects.list"
}
],
"inferredPermissions": [],
"currentTotalPermissionsCount": "3"
},
"lastRefreshTime": "2022-05-24T07:00:00Z",
"observationPeriod": "7772400s",
"stateInfo": {
"state": "ACTIVE"
},
"category": "SECURITY",
"associatedRecommendations": [
{
"recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/f3198e63-7f76-462e-a980-8e6370ff32d6"
}
],
"targetResources": [
"//storage.googleapis.com/bucket-2"
],
"insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
"etag": "\"5b60b935f27caf2c\"",
"severity": "LOW"
}
]
}מידע נוסף על הרכיבים של תובנה זמין בקטע בדיקת תובנות לגבי מדיניות ברמת מאגר בדף הזה.
קבלת תובנה יחידה לגבי מדיניות ברמת הקטגוריה
כדי לקבל מידע נוסף על תובנה ספציפית, כולל תיאור התובנה, הסטטוס שלה והמלצות שמשויכות אליה, אפשר להשתמש באחת מהשיטות הבאות:
המסוף
-
נכנסים לדף Buckets במסוף Google Cloud .
- מוודאים שהעמודה תובנות לגבי אבטחה מוצגת.
-
מחפשים את העמודה תובנות בנושא אבטחה בטבלה. בעמודה הזו מוצג סיכום של כל התובנות לגבי המדיניות של הדלי. בכל סיכום מצוין המספר הכולל של הרשאות עודפות לכל התפקידים שניתנו בקטגוריה הזו.
אם העמודה תובנות בנושא אבטחה לא מוצגת, לוחצים על אפשרויות להצגת עמודות ובוחרים באפשרות תובנות בנושא אבטחה. אחר כך מוצאים את העמודה בטבלה.
- מוצאים את הקטגוריה שרוצים לראות את התובנות לגביה ולוחצים על סיכום התובנות לגבי המדיניות באותה השורה. ייפתח חלונית עם רשימה של כל החשבונות הראשיים שיש להם תפקיד בקטגוריה, התפקידים שלהם ותובנות לגבי מדיניות שמשויכות לתפקידים האלה.
-
בעמודה תובנות לגבי אבטחה, לוחצים על תובנה לגבי מדיניות.
תובנות לגבי מדיניות הן מהצורה
EXCESS/TOTAL excess permissions, כאשרEXCESSהוא מספר ההרשאות בתפקיד שחשבון המשתמש לא צריך ו-TOTALהוא המספר הכולל של ההרשאות בתפקיד.
במסוף Google Cloud תיפתח חלונית עם פרטי התובנה.
gcloud
משתמשים בפקודה gcloud recommender
insights describe עם מזהה התובנה כדי לראות מידע על תובנה ספציפית.
-
INSIGHT_ID: המזהה של התובנה שרוצים להציג. כדי למצוא את המזהה, מציגים את רשימת התובנות של הפרויקט. -
PROJECT_ID: המזהה של הפרויקט שרוצים לנהל את התובנות לגביו. -
LOCATION: המיקום של הקטגוריה שרוצים לקבל לגביה תובנה.
gcloud recommender insights describe INSIGHT_ID \ --insight-type=google.iam.policy.Insight \ --project=PROJECT_ID \ --location=LOCATION
הפלט מציג את התובנה בפירוט. לדוגמה, התובנה הבאה מציינת שלכל המשתמשים (allUsers) יש את התפקיד Storage Legacy Bucket Reader (roles/storage.legacyBucketReader) בקטגוריה bucket-1, אבל רק שתי הרשאות בתפקיד הזה שימשו ב-90 הימים האחרונים:
associatedRecommendations: - recommendation: projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883 category: SECURITY content: condition: description: '' expression: '' location: '' title: '' currentTotalPermissionsCount: '3' exercisedPermissions: - permission: storage.buckets.get - permission: storage.objects.list inferredPermissions: [] member: allUsers role: roles/storage.legacyBucketReader description: 2 of the permissions in this role binding were used in the past 90 days. etag: '"2a8784e529b80aea"' insightSubtype: PERMISSIONS_USAGE_STORAGE_BUCKET lastRefreshTime: '2022-05-24T07:00:00Z' name: projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b observationPeriod: 7772400s severity: CRITICAL stateInfo: state: ACTIVE targetResources: - //storage.googleapis.com/bucket-1
מידע נוסף על הרכיבים של תובנה זמין בקטע בדיקת תובנות לגבי מדיניות ברמת מאגר בדף הזה.
REST
ה-method insights.get של Recommender API מחזירה תובנה אחת.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שרוצים לנהל את התובנות לגביו. -
LOCATION: המיקום של הקטגוריה שרוצים לקבל לגביה תובנה. -
INSIGHT_ID: המזהה של התובנה שרוצים להציג. אם אתם לא יודעים מהו מזהה התובנה, תוכלו לראות את רשימת התובנות בפרויקט שלכם. המזהה של תובנה הוא כל מה שמופיע אחריinsights/בשדהnameשל התובנה.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
התשובה מכילה את התובנה. לדוגמה, התובנה הבאה מציינת שלכל המשתמשים (allUsers) יש את התפקיד Storage Legacy Bucket Reader (roles/storage.legacyBucketReader) בקטגוריה bucket-1, אבל רק שתי הרשאות בתפקיד הזה שימשו ב-90 הימים האחרונים:
{
"name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
"description": "2 of the permissions in this role binding were used in the past 90 days.",
"content": {
"role": "roles/storage.legacyBucketReader",
"member": "allUsers",
"condition": {
"expression": "",
"title": "",
"description": "",
"location": ""
},
"exercisedPermissions": [
{
"permission": "storage.buckets.get"
},
{
"permission": "storage.objects.list"
}
],
"inferredPermissions": [],
"currentTotalPermissionsCount": "3"
},
"lastRefreshTime": "2022-05-24T07:00:00Z",
"observationPeriod": "7772400s",
"stateInfo": {
"state": "ACTIVE"
},
"category": "SECURITY",
"associatedRecommendations": [
{
"recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
}
],
"targetResources": [
"//storage.googleapis.com/bucket-1"
],
"insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
"etag": "\"2a8784e529b80aea\"",
"severity": "CRITICAL"
}מידע נוסף על הרכיבים של תובנה זמין בקטע בדיקת תובנות לגבי מדיניות ברמת מאגר בדף הזה.
בדיקת תובנות לגבי מדיניות ברמת הקטגוריה
אחרי שמקבלים תובנה אחת, אפשר לעיין בתוכן שלה כדי להבין את דפוס השימוש במשאבים שהיא מדגישה.
המסוף
כשלוחצים על תובנה לגבי מדיניות במסוף Google Cloud , נפתחת חלונית במסוף Google Cloud עם פרטי התובנה. הפרטים האלה מוצגים רק אם התובנה משויכת להמלצה.
אם התובנה משויכת להמלצה, בחלונית מוצגים פרטי ההמלצה.
אם התובנה לא משויכת להמלצה, בחלונית מוצגת רשימה של כל ההרשאות בתפקיד. ההרשאות שחשבון המשתמש השתמש בהן מופיעות בראש הרשימה, ואחריהן ההרשאות העודפות.
gcloud
התוכן של תובנה נקבע לפי סוגי המשנה שלה.
תובנות לגבי מדיניות ברמת ה-Bucket (google.iam.policy.Insight) הן תובנות עם סוג המשנה PERMISSIONS_USAGE_STORAGE_BUCKET.
תובנות PERMISSIONS_USAGE_STORAGE_BUCKET כוללות את הרכיבים הבאים, לא בהכרח בסדר הזה:
-
associatedRecommendations: המזהים של כל ההמלצות שמשויכות לתובנה. אם אין המלצות שמשויכות לתובנה, השדה הזה ריק. -
category: הקטגוריה של תובנות IAM היא תמידSECURITY. -
content: מדווח על השימוש בהרשאות של חשבון משתמש בתפקיד ספציפי. השדה הזה מכיל את הרכיבים הבאים:-
condition: תנאים כלשהם שמצורפים לקישור שמעניק לחשבון המשתמש את התפקיד. אם אין תנאים, השדה הזה מכיל תנאי ריק. -
exercisedPermissions: ההרשאות בתפקיד שחשבון המשתמש השתמש בהן במהלך תקופת הבדיקה. -
inferredPermissions: ההרשאות בתפקיד ששירות Recommender קבע באמצעות ML, שסביר להניח שהחשבון הראשי יזדקק להן על סמך ההרשאות שהופעלו. -
member: חשבון המשתמש שהשימוש שלו בהרשאות נותח. -
role: התפקיד שעבורו נותח השימוש בהרשאה.
-
-
description: סיכום של התובנה שקריא לאנשים. -
etag: מזהה ייחודי של המצב הנוכחי של התובנה. בכל פעם שהתובנה משתנה, מוקצה לה ערךetagחדש.כדי לשנות את המצב של תובנה, צריך לציין את
etagשל התובנה הקיימת. השימוש ב-etagעוזר לוודא שכל הפעולות יתבצעו רק אם התובנה לא השתנתה מאז הפעם האחרונה שאחזרתם אותה. -
insightSubtype: תת-הסוג של התובנה. -
lastRefreshTime: התאריך שבו התובנה עודכנה לאחרונה, שמציין את עדכניות הנתונים ששימשו ליצירת התובנה. -
name: השם של התובנה, בפורמט הבא:projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID
מחליפים את ה-placeholders בערכים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו נוצר התובנה. -
LOCATION: המיקום של הקטגוריה שהתובנה מתייחסת אליה. -
INSIGHT_ID: מזהה ייחודי של התובנה.
-
-
observationPeriod: תקופת הזמן שקדמה לתובנה. הנתונים מהמקור ששימשו ליצירת התובנה מסתיימים בתאריךlastRefreshTimeומתחילים בתאריךlastRefreshTimeפחותobservationPeriod. -
stateInfo: אחרי שהתובנות מוצעות, הן עוברות כמה שינויי סטטוס:-
ACTIVE: התובנה נוצרה, אבל לא בוצעה פעולה או שבוצעה פעולה בלי לעדכן את מצב התובנה. תובנות פעילות מתעדכנות כשיש שינויים בנתוני הבסיס. -
ACCEPTED: בוצעה פעולה מסוימת על סמך התובנה. התובנות מתקבלות כשסימנתם המלצה משויכת כCLAIMED,SUCCEEDEDאוFAILED, או כשאישרתם את התובנה ישירות. כשמצב התובנה הואACCEPTED, אי אפשר לשנות את התוכן שלה. תובנות שאושרו נשמרות למשך 90 יום אחרי האישור.
-
-
targetResources: שם המשאב המלא של הקטגוריה שאליה מתייחס התובנה. לדוגמה,//storage.googleapis.com/my-bucket.
REST
התוכן של תובנה נקבע לפי סוגי המשנה שלה.
תובנות לגבי מדיניות ברמת ה-Bucket (google.iam.policy.Insight) הן תובנות עם סוג המשנה PERMISSIONS_USAGE_STORAGE_BUCKET.
תובנות PERMISSIONS_USAGE_STORAGE_BUCKET כוללות את הרכיבים הבאים, לא בהכרח בסדר הזה:
-
associatedRecommendations: המזהים של כל ההמלצות שמשויכות לתובנה. אם אין המלצות שמשויכות לתובנה, השדה הזה ריק. -
category: הקטגוריה של תובנות IAM היא תמידSECURITY. -
content: מדווח על השימוש בהרשאות של חשבון משתמש בתפקיד ספציפי. השדה הזה מכיל את הרכיבים הבאים:-
condition: תנאים כלשהם שמצורפים לקישור שמעניק לחשבון המשתמש את התפקיד. אם אין תנאים, השדה הזה מכיל תנאי ריק. -
exercisedPermissions: ההרשאות בתפקיד שחשבון המשתמש השתמש בהן במהלך תקופת הבדיקה. -
inferredPermissions: ההרשאות בתפקיד ששירות Recommender קבע באמצעות ML, שסביר להניח שהחשבון הראשי יזדקק להן על סמך ההרשאות שהופעלו. -
member: חשבון המשתמש שהשימוש שלו בהרשאות נותח. -
role: התפקיד שעבורו נותח השימוש בהרשאה.
-
-
description: סיכום של התובנה שקריא לאנשים. -
etag: מזהה ייחודי של המצב הנוכחי של התובנה. בכל פעם שהתובנה משתנה, מוקצה לה ערךetagחדש.כדי לשנות את המצב של תובנה, צריך לציין את
etagשל התובנה הקיימת. השימוש ב-etagעוזר לוודא שכל הפעולות יתבצעו רק אם התובנה לא השתנתה מאז הפעם האחרונה שאחזרתם אותה. -
insightSubtype: תת-הסוג של התובנה. -
lastRefreshTime: התאריך שבו התובנה עודכנה לאחרונה, שמציין את עדכניות הנתונים ששימשו ליצירת התובנה. -
name: השם של התובנה, בפורמט הבא:projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID
מחליפים את ה-placeholders בערכים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו נוצר התובנה. -
LOCATION: המיקום של הקטגוריה שהתובנה מתייחסת אליה. -
INSIGHT_ID: מזהה ייחודי של התובנה.
-
-
observationPeriod: תקופת הזמן שקדמה לתובנה. הנתונים מהמקור ששימשו ליצירת התובנה מסתיימים בתאריךlastRefreshTimeומתחילים בתאריךlastRefreshTimeפחותobservationPeriod. -
stateInfo: אחרי שהתובנות מוצעות, הן עוברות כמה שינויי סטטוס:-
ACTIVE: התובנה נוצרה, אבל לא בוצעה פעולה או שבוצעה פעולה בלי לעדכן את מצב התובנה. תובנות פעילות מתעדכנות כשיש שינויים בנתוני הבסיס. -
ACCEPTED: בוצעה פעולה מסוימת על סמך התובנה. התובנות מתקבלות כשסימנתם המלצה משויכת כCLAIMED,SUCCEEDEDאוFAILED, או כשאישרתם את התובנה ישירות. כשמצב התובנה הואACCEPTED, אי אפשר לשנות את התוכן שלה. תובנות שאושרו נשמרות למשך 90 יום אחרי האישור.
-
-
targetResources: שם המשאב המלא של הקטגוריה שאליה מתייחס התובנה. לדוגמה,//storage.googleapis.com/my-bucket.
סימון תובנה לגבי מדיניות ברמת הקטגוריה כACCEPTED
אם אתם מבצעים פעולה על סמך תובנה פעילה, אתם יכולים לסמן את התובנה הזו כACCEPTED. הסטטוס ACCEPTED מציין ל-Recommender API שפעלתם על סמך התובנה הזו, וכך הוא יכול לשפר את ההמלצות.
תובנות שאושרו נשמרות למשך 90 ימים אחרי שהן מסומנות כACCEPTED.
המסוף
אם תובנה משויכת להמלצה,
יישום ההמלצה
משנה את המצב של התובנה ל-ACCEPTED.
כדי לסמן תובנה כACCEPTED בלי להחיל המלצה, משתמשים ב-CLI של gcloud או ב-API בארכיטקטורת REST.
gcloud
משתמשים בפקודה
gcloud recommender insights mark-accepted עם מזהה התובנה כדי לסמן תובנה כACCEPTED.
-
INSIGHT_ID: המזהה של התובנה שרוצים להציג. כדי למצוא את המזהה, מציגים את רשימת התובנות של הפרויקט. -
PROJECT_ID: המזהה של הפרויקט שרוצים לנהל את התובנות לגביו. -
LOCATION: המיקום של הקטגוריה שרוצים לסמן את התובנה שלה כ-ACCEPTED. -
ETAG: מזהה של גרסת התובנה. כדי לקבל אתetag, מבצעים את הפעולות הבאות:-
מקבלים את התובנה באמצעות הפקודה
gcloud recommender insights describe. -
מוצאים ומעתיקים את הערך
etagמהפלט, כולל המירכאות שמקיפות אותו. לדוגמה,"d3cdec23cc712bd0".
-
מקבלים את התובנה באמצעות הפקודה
gcloud recommender insights mark-accepted INSIGHT_ID \ --insight-type=google.iam.policy.Insight \ --project=PROJECT_ID \ --location=LOCATION \ --etag=ETAG
הפלט מציג את התובנה, ועכשיו הסטטוס הוא ACCEPTED:
associatedRecommendations: - recommendation: projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883 category: SECURITY content: condition: description: '' expression: '' location: '' title: '' currentTotalPermissionsCount: '3' exercisedPermissions: - permission: storage.buckets.get - permission: storage.objects.list inferredPermissions: [] member: allUsers role: roles/storage.legacyBucketReader description: 2 of the permissions in this role binding were used in the past 90 days. etag: '"0187c0362e4bcea7"' insightSubtype: PERMISSIONS_USAGE_STORAGE_BUCKET lastRefreshTime: '2022-05-24T07:00:00Z' name: projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b observationPeriod: 7772400s severity: CRITICAL stateInfo: state: ACCEPTED targetResources: - //storage.googleapis.com/bucket-1
מידע נוסף על פרטי הסטטוס של תובנה זמין בקטע בדיקת תובנות לגבי מדיניות ברמת מאגר בדף הזה.
REST
ה-method insights.markAccepted של Recommender API מסמנת תובנה כ-ACCEPTED.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_ID: המזהה של הפרויקט שרוצים לנהל את התובנות לגביו. -
LOCATION: המיקום של הקטגוריה שרוצים לסמן את התובנה שלה כ-ACCEPTED. -
INSIGHT_ID: המזהה של התובנה שרוצים להציג. אם אתם לא יודעים מהו מזהה התובנה, תוכלו לראות את רשימת התובנות בפרויקט שלכם. המזהה של תובנה הוא כל מה שמופיע אחריinsights/בשדהnameשל התובנה. -
ETAG: מזהה של גרסת התובנה. כדי לקבל אתetag, מבצעים את הפעולות הבאות:- קבלת התובנה באמצעות השיטה
insights.get. - מאתרים את הערך
etagבתשובה ומעתיקים אותו.
- קבלת התובנה באמצעות השיטה
ה-method של ה-HTTP וכתובת ה-URL:
POST https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID:markAccepted
תוכן בקשת JSON:
{
"etag": "ETAG"
}כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
התשובה מכילה את התובנה, ועכשיו הסטטוס שלה הוא ACCEPTED:
{
"name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
"description": "2 of the permissions in this role binding were used in the past 90 days.",
"content": {
"role": "roles/storage.legacyBucketReader",
"member": "allUsers",
"condition": {
"expression": "",
"title": "",
"description": "",
"location": ""
},
"exercisedPermissions": [
{
"permission": "storage.buckets.get"
},
{
"permission": "storage.objects.list"
}
],
"inferredPermissions": [],
"currentTotalPermissionsCount": "3"
},
"lastRefreshTime": "2022-05-24T07:00:00Z",
"observationPeriod": "7772400s",
"stateInfo": {
"state": "ACCEPTED"
},
"category": "SECURITY",
"associatedRecommendations": [
{
"recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
}
],
"targetResources": [
"//storage.googleapis.com/bucket-1"
],
"insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
"etag": "\"9a5485cdc1f05b58\"",
"severity": "CRITICAL"
}מידע נוסף על פרטי הסטטוס של תובנה זמין בקטע בדיקת תובנות לגבי מדיניות ברמת מאגר בדף הזה.
המאמרים הבאים
- איך רואים ומיישמים המלצות למדיניות לגבי קטגוריות ב-Cloud Storage
- תוכלו להשתמש ב-Active Assist כדי לראות ולנהל את כל ההמלצות לפרויקט, כולל המלצות ל-IAM.