הרשאות IAM ל-methods של JSON

הטבלה הבאה מפרטת את ההרשאות של ניהול הזהויות והרשאות הגישה (IAM) שנדרשות כדי להריץ כל method של JSON של Cloud Storage על משאב נתון. הרשאות ה-IAM מקובצות יחד כדי ליצור תפקידים. מקצים תפקידים למשתמשים ולקבוצות.

למידע על methods נוספות שחלות רק על קטגוריות שבהן הגישה האחידה ברמת הקטגוריה מושבתת, אפשר לעיין בטבלת ה-methods של ACL.

משאב Method הרשאות ה-IAM הנדרשות1
AnywhereCache create storage.anywhereCaches.create
AnywhereCache disable storage.anywhereCaches.disable
AnywhereCache get storage.anywhereCaches.get
AnywhereCache list storage.anywhereCaches.list
AnywhereCache pause storage.anywhereCaches.pause
AnywhereCache resume storage.anywhereCaches.resume
AnywhereCache update storage.anywhereCaches.update
Buckets delete storage.buckets.delete
Buckets get storage.buckets.get
storage.buckets.getIamPolicy2
storage.buckets.getIpFilter13
storage.anywhereCaches.get18
Buckets getIamPolicy storage.buckets.getIamPolicy
Buckets insert storage.buckets.create
storage.buckets.enableObjectRetention3
storage.buckets.setIpFilter14
Buckets list storage.buckets.list
storage.buckets.getIamPolicy2
storage.buckets.getIpFilter13
storage.anywhereCaches.list
Buckets listChannels storage.buckets.get
Buckets lockRetentionPolicy storage.buckets.update
Buckets patch storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
storage.buckets.setIpFilter14
storage.buckets.getIpFilter13
Buckets relocate storage.buckets.relocate
Buckets setIamPolicy storage.buckets.setIamPolicy
Buckets testIamPermissions ללא
Buckets update storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
storage.buckets.setIpFilter14
storage.buckets.getIpFilter13
storage.anywhereCaches.update
DatasetConfigs delete storageinsights.datasetConfigs.delete
DatasetConfigs get storageinsights.datasetConfigs.get
DatasetConfigs insert storageinsights.datasetConfigs.create
DatasetConfigs list storageinsights.datasetConfigs.list
DatasetConfigs linkDataset storageinsights.datasetConfigs.linkDataset
DatasetConfigs unlinkDataset storageinsights.datasetConfigs.unlinkDataset
DatasetConfigs patch storageinsights.datasetConfigs.update
Channels stop ללא
Folders get storage.folders.get
Folders insert storage.folders.create
Folders list storage.folders.list
Folders rename storage.folders.rename (לתיקיית המקור)
storage.folders.create (לתיקיית היעד)
Folders delete storage.folders.delete
IntelligenceConfig getIntelligenceConfig storage.intelligenceConfigs.get
IntelligenceConfig updateIntelligenceConfig storage.intelligenceConfigs.update
Jobs create storagebatchoperations.jobs.create
Jobs get storagebatchoperations.jobs.get
storagebatchoperations.operations.get
Jobs list storagebatchoperations.jobs.list
storagebatchoperations.operations.list
Jobs cancel storagebatchoperations.jobs.cancel
storagebatchoperations.operations.cancel
Jobs delete storagebatchoperations.jobs.delete
ManagedFolders delete storage.managedfolders.delete
storage.managedfolders.setIamPolicy10
ManagedFolders get storage.managedfolders.get
ManagedFolders getIamPolicy storage.managedfolders.getIamPolicy
ManagedFolders insert storage.managedfolders.create
ManagedFolders list storage.managedfolders.list
ManagedFolders update storage.managedfolders.update
ManagedFolders setIamPolicy storage.managedfolders.setIamPolicy
Notifications delete storage.buckets.update
Notifications get storage.buckets.get
Notifications insert storage.buckets.update
Notifications list storage.buckets.get
Objects bulkRestore storage.buckets.restore
storage.objects.create
storage.objects.delete11
storage.objects.restore
storage.objects.setIamPolicy6,12
Objects compose storage.objects.get
storage.objects.create
storage.objects.delete7
storage.objects.getIamPolicy2,6
storage.objects.setRetention8
storage.objects.createContext19
Objects copy storage.objects.get (לקטגוריית המקור)
storage.objects.create (לקטגוריית היעד)
storage.objects.delete (לקטגוריית היעד)7
storage.objects.setRetention (לקטגוריית היעד)8
storage.objects.createContext19
Objects delete storage.objects.delete
Objects get storage.objects.get
storage.objects.getIamPolicy2,6
Objects insert storage.objects.create
storage.objects.delete7
storage.objects.setRetention8
storage.objects.createContext19
Objects list storage.objects.list
storage.objects.getIamPolicy2,6
Objects move storage.objects.move15 (לאובייקט המקור)
storage.objects.delete15 (לאובייקט המקור)
storage.objects.get15 (לאובייקט המקור)
storage.objects.create (לאובייקט היעד)
storage.objects.delete16 (לאובייקט היעד)
storage.folders.create17 (לאובייקט היעד)
Objects patch storage.objects.update
storage.objects.setRetention8
storage.objects.overrideUnlockedRetention9
storage.objects.getIamPolicy4,6
storage.objects.setIamPolicy5,6
storage.objects.createContext20
storage.objects.updateContext21
storage.objects.deleteContext22
Objects restore storage.objects.create
storage.objects.delete7
storage.objects.restore
storage.objects.getIamPolicy2,6
storage.objects.setIamPolicy6,12
Objects rewrite storage.objects.get (לקטגוריית המקור)
storage.objects.create (לקטגוריית היעד)
storage.objects.delete (לקטגוריית היעד)7
storage.objects.setRetention (לקטגוריית היעד)8
storage.objects.createContext19
Objects update storage.objects.update
storage.objects.setRetention8
storage.objects.overrideUnlockedRetention9
storage.objects.getIamPolicy4,6
storage.objects.setIamPolicy5,6
storage.objects.createContext20
storage.objects.updateContext21
storage.objects.deleteContext22
Objects watchAll storage.buckets.update
Projects.hmacKeys create storage.hmacKeys.create
Projects.hmacKeys delete storage.hmacKeys.delete
Projects.hmacKeys get storage.hmacKeys.get
Projects.hmacKeys list storage.hmacKeys.list
Projects.hmacKeys update storage.hmacKeys.update
Projects.serviceAccount get resourceManager.projects.get
ReportConfigs delete storageinsights.reportConfigs.delete
ReportConfigs get storageinsights.reportConfigs.get
ReportConfigs list storageinsights.reportConfigs.list
ReportConfigs insert storageinsights.reportConfigs.create
ReportConfigs update storageinsights.reportConfigs.update
ReportDetails get storageinsights.reportDetails.get
ReportDetails list storageinsights.reportDetails.list

1 אם הבקשה משתמשת בפרמטר userProject או בכותרת x-goog-user-project, צריך את ההרשאה serviceusage.services.use בשביל מזהה הפרויקט שצוין, בנוסף להרשאות ה-IAM הרגילות שנדרשות לביצוע הבקשה.

2 ההרשאה הזו נדרשת רק אם רוצים לכלול רשימות ACL או כללי מדיניות IAM כחלק מהיטל full. אם אין את ההרשאה הזו ומבקשים היטל full, מקבלים רק היטל חלקי.

3 ההרשאה הזו נדרשת רק כשהבקשה כוללת את פרמטר השאילתה enableObjectRetention.

4 ההרשאה הזו נדרשת רק אם רוצים לכלול רשימות ACL כחלק מהתשובה.

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

6 ההרשאה הזו לא חלה על קטגוריות שמופעלת בהן גישה אחידה ברמת הקטגוריה.

7 ההרשאה הזו נדרשת רק אם הבקשה גורמת להחלפה של אובייקט עם אותו שם.

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

9 ההרשאה הזו נדרשת רק כשהבקשה כוללת את פרמטר השאילתה overrideUnlockedRetention=true.

‫10 ההרשאה הזו נדרשת רק כשהבקשה כוללת את פרמטר השאילתה allowNonEmpty=true.

‫11 ההרשאה הזו נדרשת רק אם הבקשה כוללת את פרמטר השאילתה allowOverwrite=true והבקשה גורמת להחלפה של אובייקט עם אותו שם.

12 ההרשאה הזו נדרשת רק כשהבקשה כוללת את פרמטר השאילתה copySourceAcl=true.

13 ההרשאה הזו נדרשת רק אם רוצים לכלול כללי סינון של כתובות IP של קטגוריות כחלק מהבקשה Buckets: get. אם אין לכם את ההרשאה הזו, תקבלו רק היטל חלקי.

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

15 כדי להעביר אובייקט בתוך קטגוריה עם מרחב שמות היררכי מופעל, צריך הרשאות storage.objects.delete ו-storage.objects.get, או הרשאה storage.objects.move אם רוצים להעביר אותו בלי לתת גישת קריאה או מחיקה לאובייקט.

16 ההרשאה הזו נדרשת רק אם רוצים להחליף אובייקט.

‫17 ההרשאה הזו נדרשת רק אם רוצים ליצור באופן אוטומטי תיקיות אב שחסרות.

‫18 ההרשאה הזו נדרשת רק אם רוצים להחזיר מטמונים שנוצרו באמצעות Anywhere Cache.

‫19 ההרשאה הזו נדרשת רק אם הבקשה כוללת מאפיין destination.contexts.custom לא ריק כדי ליצור אובייקט מורכב, או מאפיין contexts.custom לא ריק כדי להעתיק, להוסיף או לשכתב אובייקט.

20 ההרשאה הזו נדרשת רק אם רוצים להוסיף הקשרים לאובייקט.

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

22 ההרשאה הזו נדרשת רק אם רוצים למחוק הקשרים של אובייקט.

‫methods שקשורות ל-ACL

הטבלה הבאה מפרטת את הרשאות ה-IAM שנדרשות כדי להריץ methods של JSON החלות באופן ספציפי על ניהול רשימות ACL. ה-methods האלו רלוונטיות רק לקטגוריות שבהן גישה אחידה ברמת הקטגוריה מושבתת.

משאב Method הרשאות ה-IAM הנדרשות1
BucketAccessControls delete storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls get storage.buckets.get
storage.buckets.getIamPolicy
BucketAccessControls insert storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls list storage.buckets.get
storage.buckets.getIamPolicy
BucketAccessControls patch storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls update storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls delete storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls get storage.buckets.get
storage.buckets.getIamPolicy
DefaultObjectAccessControls insert storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls list storage.buckets.get
storage.buckets.getIamPolicy
DefaultObjectAccessControls patch storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls update storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
ObjectAccessControls delete storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls get storage.objects.get
storage.objects.getIamPolicy
ObjectAccessControls insert storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls list storage.objects.get
storage.objects.getIamPolicy
ObjectAccessControls patch storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls update storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update

1 אם הבקשה משתמשת בפרמטר userProject או בכותרת x-goog-user-project, צריך את ההרשאה serviceusage.services.use בשביל מזהה הפרויקט שצוין, בנוסף להרשאות ה-IAM הרגילות שנדרשות לביצוע הבקשה.

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