הגדרת יצירת המלצות לתפקידים

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

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

לפני שמתחילים

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות להגדרה של המלצות לתפקידי IAM, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שרוצים להגדיר בו את הכלי להמלצות בנושא IAM:

  • צפייה בפרטי ההגדרה: IAM Recommender Viewer (roles/recommender.iamViewer)
  • שינוי ההגדרה: IAM Recommender Admin (roles/recommender.iamAdmin)

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

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

ההרשאות הנדרשות

כדי להגדיר המלצות לתפקידי IAM, נדרשות ההרשאות הבאות:

  • צפייה בפרטי ההגדרה: recommender.iamPolicyRecommenderConfig.get
  • משנים את ההגדרה: recommender.iamPolicyRecommenderConfig.update

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

הצגת ההגדרה הנוכחית

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

אפשר לראות את ההגדרה באמצעות ה-CLI של gcloud או API בארכיטקטורת REST.

gcloud

כדי לקבל את ההגדרה של שירות ההמלצות בנושא IAM בפרויקט, משתמשים בפקודה gcloud beta recommender recommender-config describe.

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project.

מריצים את הפקודה gcloud beta recommender recommender-config describe:

‫Linux,‏ macOS או Cloud Shell

gcloud beta recommender recommender-config describe \
google.iam.policy.Recommender \
--project="PROJECT_ID" \
--location="global"

‏Windows (PowerShell)

gcloud beta recommender recommender-config describe `
google.iam.policy.Recommender `
--project="PROJECT_ID" `
--location="global"

Windows‏ (cmd.exe)

gcloud beta recommender recommender-config describe ^
google.iam.policy.Recommender ^
--project="PROJECT_ID" ^
--location="global"

התשובה מכילה את ההגדרה של שירות ההמלצות בנושא IAM בפרויקט. לדוגמה, יכול להיות שהיא תיראה כך:

etag: '"d3e779ee3f34f276"'
name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config
recommenderGenerationConfig:
  params:
    minimum_observation_period: P90D
revisionId: DEFAULT
updateTime: '2022-10-02T22:57:33Z'

REST

כדי לקבל את ההגדרה של כלי ההמלצות ל-IAM בפרויקט, משתמשים ב-method projects.locations.recommenders.getConfig של Recommender API.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_NUMBER: המזהה המספרי של הפרויקט ב- Google Cloud .
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project.

שיטת ה-HTTP וכתובת ה-URL:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

התשובה מכילה את ההגדרה של שירות ההמלצות בנושא IAM בפרויקט. לדוגמה, יכול להיות שהיא תיראה כך:

{
  "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "minimum_observation_period": "P90D"
    }
  },
  "etag": "\"d3e779ee3f34f276\"",
  "updateTime": "2022-10-02T22:57:33Z",
  "revisionId": "DEFAULT"
}

הסבר על פרטי ההגדרות

התוכן של ההגדרה תלוי בשירות המלצות שאליו היא מתייחסת. להגדרות של IAM Recommender יש את הרכיבים הבאים, לא בהכרח בסדר הזה:

  • name: המזהה של התצורה, בתבנית projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config.
  • recommenderGenerationConfig: הפרמטרים שבהם משתמשת מערכת ההמלצות של IAM כשהיא יוצרת המלצות. השדה הזה מכיל את הפרמטרים הבאים:

    • minimum_observation_period: מספר הימים של נתוני השימוש בהרשאות שנדרשים למערכת להמלצות של IAM כדי להתחיל ליצור המלצות לתפקידים. אם מקבלים את ההגדרה של הכלי להמלצות בנושא IAM בפרויקט, והשדה הזה לא הוגדר, הערך שלו הוא 0.
  • etag: מזהה של המצב הנוכחי של ההגדרה, שמשמש למניעת עדכונים בו-זמניים. בכל פעם שהתצורה משתנה, מוקצה ערך ETag חדש.

  • updateTime: חותמת הזמן של העדכון האחרון של ההגדרה, בפורמט UTC‏ (RFC 3339).

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

עריכת ההגדרות

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

gcloud

כדי לערוך את ההגדרה של שירות ההמלצות ל-IAM בפרויקט, משתמשים בפקודה gcloud beta recommender recommender-config update.

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • OBSERVATION_PERIOD: תקופת התצפית המינימלית שרוצים להגדיר. משתמשים באחד מהערכים הבאים: P30D (30 ימים), P60D (60 ימים) או P90D (90 ימים).
  • ETAG: ה-etag הנוכחי של ההגדרה, שאפשר למצוא על ידי קבלת ההגדרה הנוכחית והעתקת הערך של השדה etag בתגובה.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project.
  • שומרים את התוכן הבא בקובץ בשם request.json:

    {
      "params": {
        "minimum_observation_period": "OBSERVATION_PERIOD"
      }
    }

    מריצים את הפקודה gcloud beta recommender recommender-config update:

    ‫Linux,‏ macOS או Cloud Shell

    gcloud beta recommender recommender-config update \
    google.iam.policy.Recommender \
    --etag="ETAG" \
    --project="PROJECT_ID" \
    --location="global" \
    --config-file="request.json"

    ‏Windows (PowerShell)

    gcloud beta recommender recommender-config update `
    google.iam.policy.Recommender `
    --etag="ETAG" `
    --project="PROJECT_ID" `
    --location="global" `
    --config-file="request.json"

    Windows‏ (cmd.exe)

    gcloud beta recommender recommender-config update ^
    google.iam.policy.Recommender ^
    --etag="ETAG" ^
    --project="PROJECT_ID" ^
    --location="global" ^
    --config-file="request.json"

    התשובה מכילה את ההגדרה המעודכנת. לדוגמה, יכול להיות שהיא תיראה כך:

    etag: '"2549af0942332910"'
    name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config
    recommenderGenerationConfig:
      params:
        minimum_observation_period: P60D
    revisionId: 288c60eb
    updateTime: '2022-10-05T21:42:21.069170Z'
    

REST

כדי לערוך את ההגדרה של שירות ההמלצות של IAM בפרויקט, משתמשים ב-method projects.locations.recommenders.updateConfig של Recommender API.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_NUMBER: המזהה המספרי של הפרויקט ב- Google Cloud .
  • OBSERVATION_PERIOD: תקופת התצפית המינימלית שרוצים להגדיר. משתמשים באחד מהערכים הבאים: P30D (30 ימים), P60D (60 ימים) או P90D (90 ימים).
  • ETAG: ה-etag הנוכחי של ההגדרה, שאפשר למצוא על ידי קבלת ההגדרה הנוכחית והעתקת הערך של השדה etag בתגובה. משתמשים בלוכסנים הפוכים כדי לסמן בתו בריחה (escape) את המירכאות, לדוגמה, "\"df7308cca9719dcc\"".
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project.
  • ה-method של ה-HTTP וכתובת ה-URL:

    PATCH https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config

    תוכן בקשת JSON:

    {
      "name": "projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "OBSERVATION_PERIOD"
        }
      },
      "etag": "ETAG"
    }
    

    כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

    התשובה מכילה את ההגדרה המעודכנת. לדוגמה, יכול להיות שהיא תיראה כך:

    {
      "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "P60D"
        }
      },
      "etag": "\"2549af0942332910\"",
      "updateTime": "2022-10-05T21:26:52.127512Z",
      "revisionId": "b5fc0053"
    }
    

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