קבלת הצעות לתפקידים מוגדרים מראש בעזרת Gemini

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

באמצעות הכלי לבחירת תפקידי IAM, אפשר לשאול את Gemini אילו תפקידים כדאי להקצות לחשבונות המשתמשים. בדרך כלל, כדי למצוא את התפקידים המוגדרים מראש שצריך להקצות, צריך לעיין באינדקס של תפקידים והרשאות ב-IAM או בדף Roles במסוףGoogle Cloud . באמצעות הכלי לבחירת תפקידי IAM, אפשר לתאר את הפעולות שרוצים שהחשבון הראשי יבצע ואת המשאבים שנדרשים לו כדי לבצע אותן. על סמך הקלט שלכם, Gemini מציע את התפקידים המוגדרים מראש שהוא רואה כמתאימים.

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

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

  • תפקידים בהתאמה אישית
  • תפקידים לכמה חשבונות משתמש (בהנחיה אחת)
  • תפקידים במוצרי Google Workspace כמו Google Sheets ו-Google Docs

איך Gemini for Google Cloud ‎ משתמש בנתונים שלכם, ובאילו מקרים.

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

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

המסוף

אפשר להשתמש בכלי לבחירת תפקידי IAM במסוף Google Cloud בלי להפעיל ממשקי API.

REST

כדי לקבל הצעות לתפקידים באמצעות Policy Assist API בארכיטקטורת REST, צריך להפעיל את Policy Assist API בפרויקט במסוף Google Cloud :

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. התקינו את ה-CLI של Google Cloud.

  3. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  4. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  5. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

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

  7. מפעילים את Policy Assist API, אם הוא עדיין לא מופעל:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    gcloud services enable policyassist.googleapis.com
  8. התקינו את ה-CLI של Google Cloud.

  9. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  10. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  11. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

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

  13. מפעילים את Policy Assist API, אם הוא עדיין לא מופעל:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    gcloud services enable policyassist.googleapis.com

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

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

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

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

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

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

  • קבלת הצעות לתפקידים במסוף:
    • resourcemanager.projects.get
    • resourcemanager.projects.getIamPolicy
    • resourcemanager.projects.setIamPolicy
  • קבלת הצעות לתפקידים בהתאמה אישית באמצעות ה-API: iam.roles.list

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

קבלת הצעות לתפקידים בעזרת Gemini

אתם יכולים לבקש מ-Gemini הצעות לתפקידים באמצעות מסוףGoogle Cloud או Policy Assist API בארכיטקטורת REST.

המסוף

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

  • הדף IAM
  • הדף חשבונות שירות
  • הדף Dashboard במסוף Google Cloud

ההליך הבא מתבסס על הדף IAM כנקודת הכניסה העיקרית.

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. בוחרים פרויקט.

  3. בוחרים חשבון ראשי כדי לקבל הצעות לתפקידים עבורו:

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

      כדי להקצות תפקיד לסוכן שירות, מסמנים את התיבה IncludeGoogle-provided role grants כדי לראות את כתובת האימייל שלו.

    • כדי לקבל הצעות לתפקידים לחשבון משתמש שאין לו תפקידים קיימים במשאב, לוחצים על Grant Access ומזינים מזהה של חשבון משתמש, למשל my-user@example.com או //iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com.

  4. כדי לפתוח את תיבת הדו-שיח של כלי בחירת תפקידי IAM, לוחצים על Help me choose roles (עזרה בבחירת תפקידים).

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

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

    כדי לקבל מידע נוסף על התפקידים ולמה Gemini הציע אותם, לוחצים על הצגת הנימוקים. מומלץ גם להשתמש בהפניה לתפקידים ולהרשאות כדי לאמת את התפקידים ש-Gemini מציע לפני שמעניקים אותם לגורם הראשי.

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

    1. כדי לשנות את הפרומפט, לוחצים על עריכה.
    2. עורכים את התיאור ולוחצים על עדכון. ‫Gemini מעדכן את ההצעות לתפקידים על סמך התיאור החדש.
  8. כדי לאשר את ההצעות, לוחצים על הוספת תפקידים.

  9. אם רוצים, מוסיפים תנאי לתפקיד.

  10. לוחצים על Save. חשבון המשתמש מקבל את התפקיד במשאב.

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

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

REST

כדי לקבל הצעות לתפקידים באמצעות Policy Assist API בארכיטקטורת REST, צריך להפעיל את ה-method‏ recommendIamRoles.

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

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים מכילים אותיות וספרות, למשל my-project.
  • USER_INSTRUCTIONS: ההנחיה בשפה טבעית שמתארת את ההרשאות שאתם צריכים. לדוגמה, "תציע תפקיד שיאפשר לי לצפות בקטגוריות אחסון".

ה-method של ה-HTTP וכתובת ה-URL:

POST https://policyassist.googleapis.com/v1/projects/PROJECT_ID/locations/global:recommendIamRoles

תוכן בקשת JSON:

{
  "prompt": {
    "userInstructions": "USER_INSTRUCTIONS"
  }
}

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

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "summary": "",
  "recommendations": [
    {
      "type": "RECOMMENDATION_TYPE_PREDEFINED_ROLES",
      "roles": [
        {
          "name": "roles/storage.objectViewer",
          "roleType": "ROLE_TYPE_PREDEFINED",
          "grantableScopes": [
            "Projects",
            "Buckets"
          ]
        },
        {
          "name": "roles/storage.legacyBucketReader",
          "roleType": "ROLE_TYPE_PREDEFINED",
          "grantableScopes": [
            "Projects"
          ]
        }
      ],
      "intro": "The following roles match your description:"
      "detailedReasoning": "The roles/storage.objectViewer role grants permissions to view objects and their metadata. The roles/storage.legacyBucketReader grants broader read access to buckets and objects. Choose the one that best fits the principle of least privilege for your use case."
    }
  ]
}

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

תרחישים לדוגמה

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

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

תרחיש שימוש דוגמאות לפרומפטים
זיהוי תפקידים לניהול שירותים כללי
  • "אילו הרשאות צריך כדי לנהל את ההגדרה של AlloyDB ל-PostgreSQL?"
  • "אילו תפקידים נדרשים כדי לעבוד עם BigQuery?"
  • "איך נותנים למישהו גישה להרצה ולניפוי באגים בשירותי Cloud Run?"
  • "I need to provision a Vertex AI Agent identity to execute basic tool calls."
זיהוי התפקידים שנדרשים לביצוע משימות ספציפיות
  • "איזו הרשאה נדרשת כדי ליצור, להפעיל ולעצור מכונות וירטואליות?"
  • "אני רוצה לתת למשתמש הרשאה ליצור ולנהל מערכי נתונים וטבלאות ב-BigQuery".
  • "אני רוצה לתת לחשבון שירות גישה להפעלת פונקציות של Cloud Run".
  • "אני רוצה שהסוכן שלי יפעיל שרת MCP מקומי שפרסתי ב-Cloud Run".

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

  • "מה התפקיד המינימלי שנדרש כדי ליצור מכונות וירטואליות, להפעיל אותן ולהפסיק את הפעולה שלהן?"
  • "מהם תפקידי ה-IAM עם הרשאות מינימליות שנדרשים ליצירת מדיניות IAM?"
  • "אני רוצה לתת לחשבון שירות גישה להפעלת פונקציות של Cloud Run. מה הגישה הכי מצומצמת שנדרשת?"
  • ‫"What is the least permissive role my agent needs to trigger a local MCP server I have deployed on Cloud Run?" (מה התפקיד עם ההרשאות הכי מצומצמות שהסוכן שלי צריך כדי להפעיל שרת MCP מקומי שפרסתי ב-Cloud Run?)
זיהוי התפקידים שנדרשים להרצת פקודות של Google Cloud CLI
  • ‫"What IAM role is required to run: gcloud compute instances create instance-1?‎" ‏(אילו תפקידים ב-IAM נדרשים כדי להריץ את הפקודה: gcloud compute instances create instance-1?)

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

  • "What is the smallest role a service account needs to execute: gcloud datastore instances describe?"
זיהוי תפקידים למשימה שכוללת יחסי תלות טרנזיטיביים
  • "אני רוצה להגדיר מכונה ב-Compute Engine כך שהיא תתבצע באופן אוטומטי על סמך ניצול המעבד. אילו תפקידים ב-IAM צריך להקצות לחשבון השירות?"

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

  • "אני רוצה להגדיר מכונה ב-Compute Engine כך שהיא תתבצע באופן אוטומטי על סמך ניצול המעבד. מהן ההרשאות המינימליות שצריך להעניק לחשבון שירות שמשמש את הכלי לשינוי גודל אוטומטי של מכונת Compute Engine?"
זיהוי תפקידים למשימה שעשויה לדרוש שילוב של כמה תפקידים עם הרשאות ספציפיות
  • "לתת למשתמשים גישה רק למערך נתונים מסוים ב-BigQuery. הם לא צריכים להיות מסוגלים ליצור או למחוק מערכי נתונים".

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

  • "מהו התפקיד הכי מאובטח שאפשר להקצות למשתמשים כדי לתת להם גישת קריאה בלבד למערך נתונים יחיד ב-BigQuery, בלי לאפשר להם ליצור או למחוק פעולות במערך נתונים כלשהו?"

שיטות מומלצות

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

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

    מומלץ לא מומלץ פרטים
    "איזו הרשאה נדרשת כדי להריץ שאילתות SQL בטבלה ב-BigQuery ולקרוא את הנתונים ממנה?" "איזה תפקיד נדרש כדי להריץ הצהרות SQL?" ‫SQL היא שפה גנרית שמשמשת במגוון שירותים של Google Cloud Google. אם לא מציינים את השירות או את הפעולות, Gemini לא יכול להציע תפקיד מדויק.
    "אני צריך תפקידים כדי להפעיל, לעצור ולהפעיל מחדש מכונות וירטואליות של Compute Engine". ‫"I need to manage my virtual machines" (אני רוצה לנהל את המכונות הווירטואליות שלי). המונח ניהול כללי מדי. ניהול יכול להיות יצירה, מחיקה, עדכון או צפייה במכונות וירטואליות. אם תציינו בבירור את הפעולות הספציפיות שצריך לבצע (התחלה, עצירה, הפעלה מחדש) ואת סוג המשאב המדויק (מכונות וירטואליות ב-Compute Engine), תקבלו הצעות מדויקות יותר.
    "אני רוצה להעלות ולהוריד אובייקטים מקטגוריה של Cloud Storage בשם example-bucket". ‫"Give me access to storage"‏ (תן לי גישה לאחסון). המונח אחסון לבדו יכול להתייחס לשירותים שונים כמו Cloud Storage,‏ Filestore או Persistent Disk. בנוסף, לא צוינו פעולות. אם לא מציינים את השירות (Cloud Storage), את שם סוג המשאב (example-bucket) או את הפעולות (העלאה והורדה של אובייקטים), ל-Gemini אין מספיק מידע כדי להציע את התפקידים הנכונים.
    "אני צריך את התפקיד עם הכי פחות הרשאות שמאפשר גישה לקריאת רשימה בלבד ב-Secret Manager". "אני צריך גישה מוגבלת כדי לנהל את הסודות שלי". הביטוי גישה מוגבלת לא מגדיר בבירור את ההגבלות הנדרשות. ניהול הסודות שלי כולל מגוון רחב של פעולות (יצירה, רישום, עדכון, מחיקה, גישה לגרסאות). בלי להשתמש במילות מפתח מפורשות כמו הרשאות מינימליות, Gemini מציע כברירת מחדל תפקידי אדמין, עריכה או צפייה כלליים יותר שספציפיים לשירות.
  • להשתמש בשמות רשמיים. משתמשים בשמות הרשמיים של Google Cloud שירותים, סוגי משאבים ופעולות API בפרומפט. אם אתם לא בטוחים מהם השמות הרשמיים של השירותים, סוגי המשאבים או פעולות ה-API, מומלץ לעיין במסמכי המוצר הרשמיים.

    מומלץ לא מומלץ פרטים
    "איזה תפקיד צריך כדי לעדכן מערכי נתונים ב-BigQuery?" "איזה תפקיד צריך כדי לעדכן מערכי נתונים ב-BigQuery? השם הרשמי של המוצר הוא BigQuery, ולא Big query.
    "איזה תפקיד נדרש כדי ליצור קטגוריה של Cloud Storage בפרויקט שלי?" "What role is required to create a Storage bucket in my project?" (איזה תפקיד נדרש כדי ליצור קטגוריה של Storage בפרויקט שלי?) קטגוריית אחסון יכולה להתייחס לסוגים שונים של משאבים משירותים כמו Cloud Storage,‏ Filestore או Persistent Disk. אם תציינו את שם המוצר ואת סוג המשאב המשויך, ההצעות יהיו מדויקות יותר.

מילות מפתח לתפקידים עם הרשאות מינימליות

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

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

פתרון בעיות

בקטע הזה מפורטים פתרונות לבעיות נפוצות בכלי לבחירת תפקידי IAM.

‫Gemini מציע תפקידים שאי אפשר להעניק ברמת הפרויקט

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

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

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

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