מדיניות של ניהול זהויות והרשאות גישה (IAM), שמציינת את אמצעי בקרת הגישה למשאבים ב-Google Cloud.
Policy
הוא אוסף של bindings
. binding
מקשרת members
אחד או יותר, או חשבונות משתמשים, לrole
יחיד. חשבונות ראשיים יכולים להיות חשבונות משתמשים, חשבונות שירות, קבוצות Google ודומיינים (כמו G Suite). role
היא רשימה של הרשאות עם שם. כל role
יכול להיות תפקיד מוגדר מראש ב-IAM או תפקיד בהתאמה אישית שנוצר על ידי משתמש.
בסוגים מסוימים של משאבים ב-Google Cloud, אפשר גם לציין condition
ב-binding
. condition
הוא ביטוי לוגי שמאפשר גישה למשאב רק אם ערך הביטוי הוא true
. תנאי יכול להוסיף מגבלות על סמך מאפיינים של הבקשה, של המשאב או של שניהם. במאמרי העזרה של IAM מוסבר אילו משאבים תומכים בתנאים במדיניות ה-IAM שלהם.
דוגמה ל-JSON:
{
"bindings": [
{
"role": "roles/resourcemanager.organizationAdmin",
"members": [
"user:mike@example.com",
"group:admins@example.com",
"domain:google.com",
"serviceAccount:my-project-id@appspot.gserviceaccount.com"
]
},
{
"role": "roles/resourcemanager.organizationViewer",
"members": [
"user:eve@example.com"
],
"condition": {
"title": "expirable access",
"description": "Does not grant access after Sep 2020",
"expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
}
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
דוגמה ל-YAML:
bindings:
- members:
- user:mike@example.com
- group:admins@example.com
- domain:google.com
- serviceAccount:my-project-id@appspot.gserviceaccount.com
role: roles/resourcemanager.organizationAdmin
- members:
- user:eve@example.com
role: roles/resourcemanager.organizationViewer
condition:
title: expirable access
description: Does not grant access after Sep 2020
expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
etag: BwWWja0YfJA=
version: 3
למידע על IAM והמאפיינים שלו, תוכלו לעיין במסמכי העזרה של IAM.
ייצוג ב-JSON |
---|
{
"version": integer,
"bindings": [
{
object ( |
שדות | |
---|---|
version |
מציין את הפורמט של המדיניות. הערכים התקפים הם בכל פעולה שמשפיעה על קישורי תפקידים מותנים צריך לציין את הגרסה
חשוב: אם משתמשים בתנאים של IAM, צריך לכלול את השדה אם מדיניות לא כוללת תנאים, בפעולות שמתבצעות על המדיניות הזו אפשר לציין כל גרסה תקינה או להשאיר את השדה ללא הגדרה. במאמרי העזרה של IAM מוסבר אילו משאבים תומכים בתנאים במדיניות ה-IAM שלהם. |
bindings[] |
משייך רשימה של ב- |
etag |
חשוב: אם משתמשים בתנאים של IAM, צריך לכלול את השדה מחרוזת בקידוד Base64. |