מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) מאפשרת להגביל את המשאבים שקבוצה של חשבונות משתמשים יכולה לגשת אליהם. בדף הזה מוסבר איך ליצור ולהחיל כללי מדיניות של גבולות גישה של ישויות.
לפני שמתחילים
מגדירים אימות.
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud initREST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
כדאי לקרוא את הסקירה הכללית של כללי מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).
תפקידים שנדרשים כדי ליצור מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)
כדי לקבל את ההרשאה שנדרשת ליצירת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Principal Access Boundary Admin (roles/iam.principalAccessBoundaryAdmin) בארגון.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקיד שמוגדר מראש מכיל את ההרשאה iam.principalaccessboundarypolicies.create, שנדרשת כדי ליצור מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).
יכול להיות שתוכלו לקבל את ההרשאה הזו גם בתפקידים בהתאמה אישית או בתפקידים אחרים שמוגדרים מראש.
תפקידים שנדרשים להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)
ההרשאות שנדרשות כדי להחיל מדיניות לקביעת גבול הגישה לחשבונות משתמשים תלויות בקבוצת חשבונות המשתמשים שרוצים להחיל עליה את המדיניות.
כדי לקבל את ההרשאות שדרושות להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:
- משתמש עם בקרת גישה לישויות מורשות (PAB) (
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) בפרויקט -
החלת מדיניות של גבולות גישה לחשבונות משתמש על קבוצת החשבונות של תיקייה:
אדמין IAM של תיקייה (
roles/resourcemanager.folderIamAdmin) בתיקייה -
החלת מדיניות של גבולות גישה לחשבונות משתמשים על קבוצת חשבונות משתמשים בארגון:
אדמין ארגוני (
roles/resourcemanager.organizationAdmin) בארגון
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB). כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להחיל מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB), נדרשות ההרשאות הבאות:
-
iam.principalaccessboundarypolicies.bindבארגון -
החלת מדיניות של גבולות גישה של ישויות על מאגרי איחוד שירותי אימות הזהות של כוח העבודה:
iam.workforcePools.createPolicyBindingבמאגר היעד של איחוד שירותי אימות הזהויות של כוח העבודה -
החלת מדיניות של גבולות גישה של ישויות על מאגרי איחוד זהויות של עומסי עבודה:
iam.workloadIdentityPools.createPolicyBindingבפרויקט שבבעלותו מאגר היעד של איחוד זהויות של עומסי עבודה -
כדי לקבל את הסטטוס של פעולה ארוכת טווח להחלת מדיניות של גבולות גישה של ישויות על מאגר זהויות של עומסי עבודה:
iam.operations.getבפרויקט שבבעלותו מאגר הזהויות של עומסי העבודה -
החלת מדיניות של גבולות גישה של ישויות על דומיין Google Workspace:
iam.workspacePools.createPolicyBindingבארגון -
החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים על קבוצת חשבונות משתמשים בפרויקט:
resourcemanager.projects.createPolicyBindingבפרויקט -
כדי לקבל את הסטטוס של פעולה ארוכת טווח להחלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) על קבוצת החשבונות של פרויקט:
iam.operations.getבפרויקט -
החלת מדיניות לקביעת גבול הגישה לחשבונות משתמשים על קבוצת החשבונות בתיקייה:
resourcemanager.folders.createPolicyBindingבתיקייה -
החלת מדיניות של גבולות גישה לחשבונות משתמשים על קבוצת חשבונות משתמשים בארגון:
resourcemanager.organizations.createPolicyBindingבארגון
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
יצירת מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB)
אפשר ליצור מדיניות של גבולות גישה של ישויות באמצעות מסוף Cloud de Confiance , ה-CLI של gcloud או API בארכיטקטורת REST של IAM.
המסוף
נכנסים לדף Principal Access Boundary policies במסוף Cloud de Confiance .
בוחרים את הארגון שעבורו רוצים ליצור מדיניות של גבולות גישה לחשבונות ראשיים.
לוחצים על יצירת מדיניות.
מוסיפים למדיניות כללים לקביעת גבול הגישה לחשבונות משתמשים:
- לוחצים על הוספת כלל לגבי גבולות.
- בשדה Description (תיאור), מוסיפים תיאור של כלל המדיניות של גבול הגישה של הגורם המרכזי. התיאור יכול להכיל עד 256 תווים.
בקטע Resources (משאבים), מזינים את כל המשאבים במנהל המשאבים (פרויקטים, תיקיות וארגונים) שרוצים שהחשבונות הראשיים יוכלו לגשת אליהם. כל חשבון משתמש שחל עליו כלל המדיניות הזה יכול לגשת למשאבים האלה.
כל מדיניות לקביעת גבול הגישה לחשבונות משתמשים יכולה להפנות ל-500 משאבים לכל היותר בכל הכללים במדיניות.
לוחצים על סיום.
כדי להוסיף עוד כללים למדיניות, חוזרים על השלבים האלה. כל מדיניות של גבולות גישה לחשבונות משתמשים יכולה לכלול עד 500 כללים.
בקטע Policy name, מזינים שם למדיניות. השם יכול להכיל עד 63 תווים.
ברשימה Enforcement version, בוחרים את גרסת האכיפה של המדיניות. הגרסה של המדיניות לקביעת גבול הגישה לחשבונות משתמשים קובעת אילו הרשאות נאכפות על ידי IAM במסגרת המדיניות לקביעת גבול הגישה לחשבונות משתמשים.
מידע נוסף על גרסאות אכיפה זמין במאמר בנושא גרסאות אכיפה של בקרת גישה לישויות מורשות (PAB).
לוחצים על יצירה.
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,4ו-latest.מידע נוסף על גרסאות אכיפה זמין במאמר גרסאות אכיפה של בקרת גישה לישויות מורשות (PAB).
מריצים את הפקודה הבאה:
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), שמגדירים את המשאבים שישויות מורשות מושפעות יכולות לגשת אליהם. מדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB) יכולה לכלול עד 500 כללים. כל כלל הוא בפורמט הבא:{ "description": "DESCRIPTION", "resources": [ RESOURCES ], "effect": ALLOW }
מחליפים את הערכים הבאים:
-
DESCRIPTION: אופציונלי. התיאור של כלל המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB). התיאור יכול להכיל עד 256 תווים. -
RESOURCES: רשימה של משאבים ב-מנהל המשאבים (פרויקטים, תיקיות וארגונים) שרוצים להגדיר לישויות מורשות אפשרות גישה אליהם. כל חשבון משתמש שחל עליו כלל המדיניות הזה יכול לגשת למשאבים האלה.כל מדיניות לקביעת גבול הגישה לחשבונות משתמשים יכולה להפנות למקסימום 500 משאבים בכל הכללים במדיניות.
-
-
ENFORCEMENT_VERSION: הגרסה של המדיניות לקביעת גבול הגישה לחשבונות משתמשים ש-IAM משתמש בה כדי לאכוף את המדיניות. גרסת האכיפה קובעת אילו הרשאות נאכפות ב-IAM במסגרת המדיניות לקביעת גבול הגישה לחשבונות משתמשים (PAB).הערכים הקבילים הם
1,2,3,4ו-latest.מידע נוסף על גרסאות אכיפה זמין במאמר גרסאות אכיפה של בקרת גישה לישויות מורשות (PAB).
ה-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) בקישור נאכפת על החשבונות הראשיים בקישור.
אפשר ליצור קישור למדיניות באמצעות Cloud de Confiance המסוף, ה-CLI של gcloud או API בארכיטקטורת REST של IAM.
המסוף
נכנסים לדף Principal Access Boundary policies במסוף Cloud de Confiance .
בוחרים את הארגון שבבעלותו מדיניות הגבלת הגישה של חשבון המשתמש שרוצים ליצור עבורו קישור.
לוחצים על מזהה המדיניות של המדיניות לקביעת גבול הגישה לחשבונות משתמשים שרוצים ליצור עבורה קישור.
לוחצים על הכרטיסייה Bindings (קישורים) ואז על Add binding (הוספת קישור).
מזינים את פרטי הקישור:
- אופציונלי: בשדה Display name, מזינים שם לתצוגה של הקישור. השם המוצג יכול לכלול עד 63 תווים.
- בשדה Binding ID (מזהה הקישור), מזינים שם ייחודי לקישור – לדוגמה,
example-binding. בקטע Target principal set, מזינים את הסוג והמזהה של קבוצת חשבונות המשתמשים שאליה רוצים לקשר את המדיניות. אי אפשר לשנות את הערך הזה אחרי שיוצרים את הקישור למדיניות.
מידע נוסף על החשבונות הראשיים שכלולים בכל קבוצת חשבונות ראשיים זמין במאמר קבוצות חשבונות ראשיים נתמכות.
אופציונלי: כדי לציין לגבי אילו חשבונות משתמשים בקבוצת החשבונות המשתמשים תיאכף המדיניות לקביעת גבול הגישה לחשבונות משתמשים, מוסיפים תנאי לקישור:
- לוחצים על הוספת תנאי.
- בשדה שם, מזינים סיכום קצר של מטרת התנאי.
- אופציונלי: בשדה Description, מזינים תיאור ארוך יותר של התנאי.
- בשדה Expression (ביטוי), מזינים ביטוי תנאי שמשתמש בתחביר של Common Expression Language (CEL). הביטוי צריך להתייחס למאפיינים
principal.typeאוprincipal.subject. אין תמיכה במאפיינים אחרים. - לוחצים על Save.
אופציונלי: כדי לבדוק את השינויים במדיניות של גבולות הגישה של חשבון המשתמש באמצעות סימולטור המדיניות, לוחצים על בדיקת שינויים. בודקים את תוצאות הסימולציה ומעדכנים את המדיניות אם יש צורך.
מידע נוסף על בדיקת מדיניות של גבולות גישה של גורמים מרכזיים באמצעות סימולטור המדיניות זמין במאמר סימולטור המדיניות בנושא מדיניות של גבולות גישה של גורמים מרכזיים.
כדי ליצור את הקישור, לוחצים על 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, הפעולה הושלמה ואפשר להפסיק לבצע אותה.