יצירה והחלה של מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)

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

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

תפקידים שנדרשים כדי ליצור מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)

כדי לקבל את ההרשאה שנדרשת ליצירת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Principal Access Boundary Admin (roles/iam.principalAccessBoundaryAdmin) בארגון. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

התפקיד המוגדר מראש הזה מכיל את ההרשאה iam.principalaccessboundarypolicies.create, שנדרשת כדי ליצור מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).

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

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

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

כדי לקבל את ההרשאות שדרושות להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

  • משתמש עם הרשאת גישה מוגבלת (roles/iam.principalAccessBoundaryUser) בארגון
  • החלת מדיניות של גבולות גישה של חשבונות ראשיים על מאגרי זהויות של כוח עבודה: IAM Workforce Pool Admin (roles/iam.workforcePoolAdmin) במאגר הזהויות של כוח העבודה
  • החלת מדיניות של גבולות גישה של חשבונות ראשיים על מאגרי זהויות של עומסי עבודה: IAM Workload Identity Pool Admin (roles/iam.workloadIdentityPoolAdmin) בפרויקט שבבעלותו מאגר הזהויות של עומסי העבודה
  • כדי לקבל את הסטטוס של פעולה ממושכת להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) על מאגר זהויות של עומסי עבודה: צפייה בפעולות ב-IAM (roles/iam.operationViewer) בפרויקט שבבעלותו מאגר הזהויות של עומסי עבודה
  • החלת מדיניות של גבולות גישה של ישויות על דומיין ב-Google Workspace: אדמין IAM של מאגר Workspace (roles/iam.workspacePoolAdmin) בארגון
  • החלת מדיניות של גבולות גישה לחשבונות ראשיים על קבוצת החשבונות הראשיים של פרויקט: אדמין IAM של פרויקט (roles/resourcemanager.projectIamAdmin) בפרויקט
  • קבלת הסטטוס של פעולה ממושכת להחלת מדיניות של גבולות גישה של חשבונות משתמשים על קבוצת החשבונות של פרויקט: IAM Operation Viewer (roles/iam.operationViewer) on the project
  • החלת מדיניות של גבולות גישה לחשבונות משתמש על קבוצת החשבונות של תיקייה: אדמין IAM של תיקייה (roles/resourcemanager.folderIamAdmin) בתיקייה
  • החלת מדיניות של גבולות גישה לחשבונות משתמשים על קבוצת חשבונות משתמשים בארגון: אדמין ארגוני (roles/resourcemanager.organizationAdmin) בארגון

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

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

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

כדי להחיל מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), נדרשות ההרשאות הבאות:

  • iam.principalaccessboundarypolicies.bind בארגון
  • החלת מדיניות של גבולות גישה של ישויות על מאגרי זהויות של כוח עבודה: iam.workforcePools.createPolicyBinding במאגר היעד של איחוד שירותי אימות הזהות של כוח העבודה
  • החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) על מאגרי איחוד זהויות של עומסי עבודה: iam.workloadIdentityPools.createPolicyBinding בפרויקט שבבעלותו מאגר איחוד זהויות של עומסי עבודה
  • כדי לקבל את הסטטוס של פעולה ממושכת להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) על מאגר זהויות של עומסי עבודה: iam.operations.get בפרויקט שבבעלותו מאגר הזהויות של עומסי העבודה
  • החלת מדיניות של גבולות גישה של ישויות על דומיין Google Workspace: iam.workspacePools.createPolicyBinding בארגון
  • החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים על קבוצת החשבונות בפרויקט: resourcemanager.projects.createPolicyBinding בפרויקט
  • כדי לקבל את הסטטוס של פעולה ארוכת טווח להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) על קבוצת החשבונות של פרויקט: iam.operations.get בפרויקט
  • החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים על קבוצת החשבונות העיקריים בתיקייה: resourcemanager.folders.createPolicyBinding בתיקייה
  • החלת מדיניות של גבולות גישה לחשבונות משתמשים על קבוצת חשבונות משתמשים בארגון: resourcemanager.organizations.createPolicyBinding בארגון

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

יצירת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)

אפשר ליצור מדיניות של גבולות גישה של ישויות באמצעות מסוף Google Cloud ,‏ ה-CLI של gcloud או API בארכיטקטורת REST של IAM.

המסוף

  1. נכנסים לדף Principal Access Boundary policies במסוף Google Cloud .

    מעבר אל מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)

  2. בוחרים את הארגון שעבורו רוצים ליצור מדיניות של גבולות גישה לחשבונות ראשיים.

  3. לוחצים על יצירת מדיניות.

  4. מוסיפים למדיניות כללים לקביעת גבול הגישה לחשבונות משתמשים:

    1. לוחצים על הוספת כלל גבולות.
    2. בשדה Description (תיאור), מוסיפים תיאור של כלל מדיניות הגבלת הגישה של הגורם המורשה. התיאור יכול להכיל עד 256 תווים.
    3. בקטע Resources (משאבים), מזינים את כל המשאבים של מנהל המשאבים (פרויקטים, תיקיות וארגונים) שרוצים שהישויות המורשות יוכלו לגשת אליהם. כל חשבון משתמש שחל עליו כלל המדיניות הזה יכול לגשת למשאבים האלה.

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

    4. לוחצים על סיום.

    5. כדי להוסיף עוד כללי מדיניות, חוזרים על השלבים האלה. כל מדיניות של גבולות גישה לחשבונות משתמשים יכולה לכלול עד 500 כללים.

  5. בקטע Policy name, מזינים שם למדיניות. השם יכול להכיל עד 63 תווים.

  6. ברשימה Enforcement version, בוחרים את גרסת האכיפה של המדיניות. הגרסה של המדיניות לקביעת גבול הגישה לחשבונות משתמשים קובעת אילו הרשאות נאכפות על ידי IAM במסגרת המדיניות לקביעת גבול הגישה לחשבונות משתמשים.

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

  7. לוחצים על יצירה.

gcloud

הפקודה gcloud iam principal-access-boundary-policies create יוצרת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).

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

  • ORG_ID: המזהה של הארגון שבו רוצים ליצור את המדיניות לקביעת גבול הגישה לחשבונות משתמשים. מזהי ארגונים הם מספרים, למשל 123456789012.
  • PAB_POLICY_ID: מזהה ייחודי של מדיניות גבולות הגישה של החשבון הראשי, לדוגמה example-policy. :
  • DISPLAY_NAME: אופציונלי. תיאור של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שקריא לאנשים – לדוגמה, Example policy. השם המוצג יכול לכלול עד 63 תווים.
  • FILE_PATH: הנתיב לקובץ JSON שמכיל את פרטי הכלל של מדיניות גבולות הגישה של חשבון המשתמש. הקובץ צריך להיות בפורמט הבא:

    {
      "description": DESCRIPTION,
      "resources": [
        RESOURCES
      ],
      "effect": ALLOW
    }
        

    מחליפים את הערכים הבאים:

    • DESCRIPTION: אופציונלי. תיאור של כלל המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB). התיאור יכול להכיל עד 256 תווים.
    • RESOURCES: רשימה של משאבי מנהל המשאבים (פרויקטים, תיקיות וארגונים) שרוצים שישויות מורשות יוכלו לגשת אליהם. כל חשבון משתמש שחל עליו כלל המדיניות הזה יכול לגשת למשאבים האלה.

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

  • ENFORCEMENT_VERSION: הגרסה של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שבה נעשה שימוש ב-IAM כשמחילים את המדיניות. גרסת האכיפה קובעת אילו הרשאות נאכפות על ידי IAM במסגרת המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).

    הערכים הקבילים הם 1,‏ 2,‏ 3 ו-latest.

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

מריצים את הפקודה הבאה:

‫Linux,‏ macOS או Cloud Shell

gcloud iam principal-access-boundary-policies create PAB_POLICY_ID \
    --organization=ORG_ID --location=global \
    --display-name=DISPLAY_NAME --details-rules=FILE_PATH.json \
    --details-enforcement-version=ENFORCEMENT_VERSION

‏Windows (PowerShell)

gcloud iam principal-access-boundary-policies create PAB_POLICY_ID `
    --organization=ORG_ID --location=global `
    --display-name=DISPLAY_NAME --details-rules=FILE_PATH.json `
    --details-enforcement-version=ENFORCEMENT_VERSION

Windows‏ (cmd.exe)

gcloud iam principal-access-boundary-policies create PAB_POLICY_ID ^
    --organization=ORG_ID --location=global ^
    --display-name=DISPLAY_NAME --details-rules=FILE_PATH.json ^
    --details-enforcement-version=ENFORCEMENT_VERSION

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

Create request issued for: [example-policy]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715373988044-6181fa136df85-3b06a30a-4816d25b] to complete...done.
Created principalAccessBoundaryPolicy [example-policy].

REST

השיטה principalAccessBoundaryPolicies.create יוצרת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).

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

  • ORG_ID: המזהה של הארגון שבו רוצים ליצור את המדיניות לקביעת גבול הגישה לחשבונות משתמשים. מזהי ארגונים הם מספרים, למשל 123456789012.
  • PAB_POLICY_ID: מזהה ייחודי של מדיניות גבולות הגישה של החשבון הראשי, לדוגמה example-policy.
  • DISPLAY_NAME: אופציונלי. תיאור של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שקריא לאנשים – לדוגמה, Example policy. השם המוצג יכול לכלול עד 63 תווים.
  • PAB_RULES: רשימה של כללים לקביעת גבול הגישה לחשבונות משתמשים, שמגדירים את המשאבים שחשבונות המשתמשים המושפעים יכולים לגשת אליהם. מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) יכולה לכלול עד 500 כללים. כל כלל הוא בפורמט הבא:

    {
    "description": "DESCRIPTION",
    "resources": [
      RESOURCES
    ],
    "effect": ALLOW
    }

    מחליפים את הערכים הבאים:

    • DESCRIPTION: אופציונלי. התיאור של כלל המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB). התיאור יכול להכיל עד 256 תווים.
    • RESOURCES: רשימה של משאבי מנהל המשאבים (פרויקטים, תיקיות וארגונים) שרוצים שישויות מורשות יוכלו לגשת אליהם. כל חשבון משתמש שחל עליו כלל המדיניות הזה יכול לגשת למשאבים האלה.

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

  • ENFORCEMENT_VERSION: הגרסה של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שבה נעשה שימוש ב-IAM כשמחילים את המדיניות. גרסת האכיפה קובעת אילו הרשאות נאכפות על ידי IAM במסגרת המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).

    הערכים הקבילים הם 1,‏ 2,‏ 3 ו-latest.

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

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

POST https://iam.googleapis.com/v3/organizations/ORG_ID/locations/global?principalAccessBoundaryPolicyId=PAB_POLICY_ID

תוכן בקשת JSON:

{
  "displayName": DISPLAY_NAME,
  "details": {
    "rules": [
      PAB_RULES
    ],
    "effect": ALLOW
    }
  ],
  "enforcementVersion": "ENFORCEMENT_VERSION"
}

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

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

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373120647-6181f6d8371d2-83309b71-2b8a7532",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:32:00.898809495Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-policy",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים על קבוצת חשבונות משתמשים

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

אפשר ליצור קישור למדיניות באמצעות מסוף Google Cloud ,‏ ה-CLI של gcloud או API בארכיטקטורת REST של IAM.

המסוף

  1. נכנסים לדף Principal Access Boundary policies במסוף Google Cloud .

    מעבר אל מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)

  2. בוחרים את הארגון שבבעלותו מדיניות הגבלת הגישה של חשבון המשתמש שרוצים ליצור עבורו קישור.

  3. לוחצים על מזהה המדיניות של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שרוצים ליצור עבורה קישור.

  4. לוחצים על הכרטיסייה Bindings (קישורים) ואז על Add binding (הוספת קישור).

  5. מזינים את פרטי הקישור:

    1. אופציונלי: בשדה Display name, מזינים שם לתצוגה של הקישור. השם המוצג יכול לכלול עד 63 תווים.
    2. בשדה Binding ID (מזהה הקישור), מזינים שם ייחודי לקישור – לדוגמה, example-binding.
    3. בקטע Target principal set, מזינים את הסוג והמזהה של קבוצת חשבונות המשתמשים שאליה רוצים לקשר את המדיניות. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.

      מידע נוסף על החשבונות הראשיים שכלולים בכל קבוצת חשבונות ראשיים זמין במאמר קבוצות חשבונות ראשיים נתמכות.

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

    1. לוחצים על הוספת תנאי.
    2. בשדה כותרת, מזינים סיכום קצר של מטרת התנאי.
    3. אופציונלי: בשדה Description, מזינים תיאור ארוך יותר של התנאי.
    4. בשדה Expression (ביטוי), מזינים ביטוי של תנאי שמשתמש בתחביר של Common Expression Language ‏(CEL). הביטוי צריך להתייחס אל המאפיינים principal.type או principal.subject. אין תמיכה במאפיינים אחרים.
    5. לוחצים על Save.
  7. אם רוצים לבדוק את השינויים במדיניות של גבולות הגישה של חשבון המשתמש באמצעות סימולטור המדיניות, לוחצים על בדיקת שינויים. בודקים את תוצאות הסימולציה ומעדכנים את המדיניות לפי הצורך.

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

  8. כדי ליצור את הקישור, לוחצים על Add (הוספה).

gcloud

הפקודה gcloud iam policy-bindings create יוצרת קישור למדיניות.

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

  • BINDING_ID: שם ייחודי לקשירת המדיניות, לדוגמה, example-binding.
  • RESOURCE_TYPE: סוג המשאב במנהל המשאבים (פרויקט, תיקייה או ארגון) שה-policy binding הוא צאצא שלו. אפשר להשתמש בערך project,‏ folder או organization

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

  • RESOURCE_ID: המזהה של הפרויקט, התיקייה או הארגון שהקישור למדיניות הוא צאצא שלהם. מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project. מזהי תיקיות וארגונים מכילים רק ספרות, למשל 123456789012.
  • ORG_ID: המזהה של הארגון שבבעלותו המדיניות לקביעת גבול הגישה לחשבונות משתמשים שרוצים לקשר לקבוצת חשבונות המשתמשים. מזהי ארגונים הם מספרים, למשל 123456789012.
  • PAB_POLICY_ID: המזהה של מדיניות הגבלת הגישה לחשבון הראשי שרוצים לקשר לקבוצת החשבונות הראשיים, לדוגמה, example-pab-policy. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.
  • PRINCIPAL_SET: קבוצת החשבונות שרוצים לקשר אליה את המדיניות. רשימת הסוגים החוקיים של חשבונות משתמשים מופיעה במאמר קבוצות חשבונות משתמשים נתמכות. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.
  • DISPLAY_NAME: אופציונלי. תיאור קריא של הקישור – לדוגמה, Example binding. השם המוצג יכול לכלול עד 63 תווים.
  • CONDITION_DETAILS: אופציונלי. ביטוי תנאי שמציין לאילו חשבונות משתמשים מתוך קבוצת חשבונות המשתמשים נאכפת המדיניות לקביעת גבול הגישה לחשבונות משתמשים. הוא מכיל את השדות הבאים:

    • expression: ביטוי תנאי שמשתמש בתחביר של Common Expression Language ‏ (CEL). הביטוי צריך להתייחס למאפיינים principal.type או principal.subject. אין תמיכה במאפיינים אחרים.

      הביטוי יכול להכיל עד 10 אופרטורים לוגיים (&&,‏ ||,‏ !) ואורכו יכול להיות עד 250 תווים.

    • title: אופציונלי. סיכום קצר של מטרת התנאי.
    • description: אופציונלי. תיאור ארוך יותר של התנאי.

מריצים את הפקודה הבאה:

‫Linux,‏ macOS או Cloud Shell

gcloud iam policy-bindings create BINDING_ID \
    --RESOURCE_TYPE=RESOURCE_ID --location=global \
    --policy="organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID" \
    --target-principal-set=PRINCIPAL_SET_ID \
    --display-name=DISPLAY_NAME \
    CONDITION_DETAILS

‏Windows (PowerShell)

gcloud iam policy-bindings create BINDING_ID `
    --RESOURCE_TYPE=RESOURCE_ID --location=global `
    --policy="organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID" `
    --target-principal-set=PRINCIPAL_SET_ID `
    --display-name=DISPLAY_NAME `
    CONDITION_DETAILS

Windows‏ (cmd.exe)

gcloud iam policy-bindings create BINDING_ID ^
    --RESOURCE_TYPE=RESOURCE_ID --location=global ^
    --policy="organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID" ^
    --target-principal-set=PRINCIPAL_SET_ID ^
    --display-name=DISPLAY_NAME ^
    CONDITION_DETAILS

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

Create request issued for: [example-binding]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374545618-6181fc272c6f9-55ff07f4-97d0ac76] to complete...done.
Created policyBinding [example-binding].

REST

השיטה policyBindings.create יוצרת קישור למדיניות.

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

  • RESOURCE_TYPE: סוג המשאב במנהל המשאבים (פרויקט, תיקייה או ארגון) שה-policy binding הוא צאצא שלו. אפשר להשתמש בערך projects,‏ folders או organizations

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

  • RESOURCE_ID: המזהה של הפרויקט, התיקייה או הארגון שהקישור למדיניות הוא צאצא שלהם. מזהי פרויקטים הם מחרוזות אלפאנומריות, כמו my-project. מזהי תיקיות וארגונים מכילים רק ספרות, למשל 123456789012.
  • BINDING_ID: שם ייחודי לקשירת המדיניות, לדוגמה, example-binding.
  • DISPLAY_NAME: אופציונלי. תיאור קריא של הקישור – לדוגמה, Example binding. השם המוצג יכול לכלול עד 63 תווים.
  • PRINCIPAL_SET: קבוצת החשבונות שרוצים לקשר אליה את המדיניות. רשימת הסוגים החוקיים של חשבונות משתמשים מופיעה במאמר קבוצות חשבונות משתמשים נתמכות. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.
  • ORG_ID: המזהה של הארגון שבבעלותו המדיניות לקביעת גבול הגישה לחשבונות משתמשים שרוצים לקשר לקבוצת חשבונות המשתמשים. מזהי ארגונים הם מספרים, למשל 123456789012.
  • PAB_POLICY_ID: המזהה של מדיניות הגבלת הגישה לחשבון הראשי שרוצים לקשר לקבוצת החשבונות הראשיים, לדוגמה, example-pab-policy. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.
  • CONDITION_DETAILS: אופציונלי. ביטוי תנאי שמציין לאילו חשבונות משתמשים מתוך קבוצת חשבונות המשתמשים נאכפת המדיניות לקביעת גבול הגישה לחשבונות משתמשים. הוא מכיל את השדות הבאים:

    • expression: ביטוי תנאי שמשתמש בתחביר של Common Expression Language ‏ (CEL). הביטוי צריך להתייחס למאפיינים principal.type או principal.subject. אין תמיכה במאפיינים אחרים.

      הביטוי יכול להכיל עד 10 אופרטורים לוגיים (&&,‏ ||,‏ !) ואורכו יכול להיות עד 250 תווים.

    • title: אופציונלי. סיכום קצר של מטרת התנאי.
    • description: אופציונלי. תיאור ארוך יותר של התנאי.

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

POST https://iam.googleapis.com/v3/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings?policyBindingId=BINDING_ID

תוכן בקשת JSON:

{
  "displayName": DISPLAY_NAME,
  "target": {
    "principalSet": PRINCIPAL_SET
  },
  "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
  "policy": "organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID",
  "condition": {
    CONDITION_DETAILS
  }
}

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

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

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373120647-6181f6d8371d2-83309b71-2b8a7532",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:32:00.898809495Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-binding",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

בדיקת הסטטוס של פעולה ממושכת

כשמשתמשים ב-API בארכיטקטורת REST או בספריות הלקוח, כל שיטה שמשנה מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) או קשירה מחזירה פעולה ממושכת (LRO). הפעולה הממושכת עוקבת אחרי הסטטוס של הבקשה ומציינת אם השינוי במדיניות או בהרשאה הושלם.

REST

השיטה operations.get מחזירה את הסטטוס של פעולה ממושכת.

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

  • OPERATION_NAME: השם המלא של הפעולה. השם הזה מופיע בתגובה לבקשה המקורית.

    שם הפעולה הוא בפורמט הבא:

          RESOURCE_TYPE/RESOURCE_ID/locations/global/operations/OPERATION_ID
        

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

GET https://iam.googleapis.com/v3/OPERATION_NAME

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

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

{
  "name": "organizations/314340013352/locations/global/operations/operation-1732752311821-627edd607a3df-9a62cdea-2a7d9f07",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-11-28T00:05:12.006289686Z",
    "endTime": "2024-11-28T00:05:12.192141801Z",
    "target": "organizations/314340013352/locations/global/principalAccessBoundaryPolicies/example-policy",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": true,
  "response": {
    PAB_POLICY
  }
}

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

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