הרשאות IAM לפקודות gcloud storage

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

בסעיפים שמתחת לטבלה אפשר למצוא הערות לגבי השימוש בתווים כלליים לחיפוש, בדגל --recursive ובדגל --billing-project.

פקודה סימון הרשאות IAM נדרשות
batch-operations jobs create storagebatchoperations.jobs.create
batch-operations jobs cancel storagebatchoperations.jobs.cancel
batch-operations jobs delete storagebatchoperations.jobs.delete
batch-operations jobs get storagebatchoperations.jobs.get
batch-operations jobs list storagebatchoperations.jobs.list
buckets add-iam-policy-binding storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
buckets anywhere-caches create storage.anywhereCaches.create
buckets anywhere-caches describe storage.anywhereCaches.get
buckets anywhere-caches list storage.anywhereCaches.list
buckets anywhere-caches update storage.anywhereCaches.update
buckets anywhere-caches pause storage.anywhereCaches.pause
buckets anywhere-caches resume storage.anywhereCaches.resume
buckets anywhere-caches disable storage.anywhereCaches.disable
buckets create storage.buckets.create
storage.buckets.setIpFilter15
buckets delete storage.buckets.delete
buckets describe storage.buckets.get
storage.buckets.getIamPolicy1
storage.buckets.getIpFilter16
buckets get-iam-policy storage.buckets.get
storage.buckets.getIamPolicy
buckets list storage.buckets.list
storage.buckets.getIamPolicy1
buckets notifications create storage.buckets.get
storage.buckets.update
pubsub.topics.get (לפרויקט שמכיל את נושא ה-Pub/Sub)
pubsub.topics.create3 (לפרויקט שמכיל את נושא ה-Pub/Sub)
pubsub.topics.getIamPolicy (לנושא ה-Pub/Sub שמקבל התראות)
pubsub.topics.setIamPolicy3 (לנושא ה-Pub/Sub שמקבל התראות)
buckets notifications create --skip-topic-setup storage.buckets.get
storage.buckets.update
buckets notifications delete storage.buckets.get
storage.buckets.update
buckets notifications describe storage.buckets.get
buckets notifications list storage.buckets.get
buckets relocate storage.buckets.relocate
buckets remove-iam-policy-binding storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
buckets set-iam-policy storage.buckets.setIamPolicy
storage.buckets.update
buckets update storage.buckets.update
storage.buckets.setIpFilter15
buckets update --no-requester-pays storage.buckets.update
resourcemanager.projects.createBillingAssignment2
buckets update --recovery-point-objective
--rpo
--[no-]uniform-bucket-level-access
storage.buckets.get
storage.buckets.update
buckets update --clear-pap
--clear-public-access-prevention
--[no-]pap
--[no-]public-access-prevention
storage.buckets.get
storage.buckets.update
storage.buckets.setIamPolicy
cat storage.objects.get
storage.objects.list13
cp storage.objects.get (לאובייקטי המקור)
storage.objects.create (לקטגוריית היעד)
storage.objects.list4 (לקטגוריית היעד)
storage.objects.delete5 (לקטגוריית היעד)
storage.buckets.get12 (לקטגוריית היעד)
du storage.objects.list
folders create storage.folders.create
folders delete storage.folders.delete
folders describe storage.folders.get
folders list storage.folders.list
folders rename storage.folders.rename (לקטגוריית המקור)
storage.folders.create (לקטגוריית היעד)
hash storage.objects.get
hmac create storage.hmacKeys.create
hmac delete storage.hmacKeys.delete
hmac describe storage.hmacKeys.get
hmac list storage.hmacKeys.list
hmac update storage.hmacKeys.update
insights dataset-configs create storageinsights.datasetConfigs.create
insights dataset-configs create-link storageinsights.datasetConfigs.linkDataset
insights dataset-configs delete storageinsights.datasetConfigs.delete
insights dataset-configs delete-link storageinsights.datasetConfigs.unlinkDataset
insights dataset-configs describe storageinsights.datasetConfigs.get
insights dataset-configs list storageinsights.datasetConfigs.list
insights dataset-configs update storageinsights.datasetConfigs.update
insights inventory-reports create storageinsights.reportConfigs.create
insights inventory-reports delete storageinsights.reportConfigs.delete
insights inventory-reports details list storageinsights.reportDetails.list
insights inventory-reports details describe storageinsights.reportDetails.get
insights inventory-reports list storageinsights.reportConfigs.list
insights inventory-reports update storageinsights.reportConfigs.get
storageinsights.reportConfigs.update
ls (לרשימת קטגוריות) storage.buckets.list
storage.buckets.getIamPolicy6
ls (לרשימת אובייקטים) storage.objects.get7
storage.objects.list
storage.objects.getIamPolicy8
ls --buckets storage.buckets.get
storage.buckets.getIamPolicy6
storage intelligence-config enable storage.intelligenceConfigs.update
storage-intelligence disable storage.intelligenceConfigs.update
storage-intelligence describe storage.intelligenceConfigs.get
storage-intelligence update storage.intelligenceConfigs.update
mv storage.objects.get (לאובייקטי המקור)
storage.objects.delete (לקטגוריית המקור)
storage.objects.create (לקטגוריית היעד)
storage.objects.list4 (לקטגוריית היעד)
storage.objects.delete5 (לקטגוריית היעד)
storage.buckets.get12 (לקטגוריית היעד)
objects compose storage.objects.get
storage.objects.create
storage.objects.delete9
objects describe storage.objects.get
storage.objects.getIamPolicy8
objects list storage.objects.list
storage.objects.getIamPolicy8
objects update storage.objects.get
storage.objects.list
storage.objects.update
objects update --storage-class
--encryption-key
--clear-encryption-key
storage.objects.get
storage.objects.list
storage.objects.create
storage.objects.delete
objects update --retention-mode
--retain-until
--clear-retention
storage.objects.get
storage.objects.list
storage.objects.update
storage.objects.setRetention
storage.objects.overrideUnlockedRetention11
operations cancel storage.bucketOperations.cancel
operations describe storage.bucketOperations.get
operations list storage.bucketOperations.list
restore storage.objects.create
storage.objects.delete9
storage.objects.restore
restore --async storage.objects.create
storage.objects.delete14
storage.objects.restore
storage.buckets.restore
rm storage.buckets.delete
storage.objects.delete
storage.objects.list
rsync storage.objects.list (לקטגוריית המקור)
storage.objects.get (לאובייקטי המקור)
storage.objects.list (לקטגוריית היעד)
storage.objects.get (לקטגוריית היעד)
storage.objects.create (לקטגוריית היעד)
storage.objects.delete10 (לקטגוריית היעד)
storage.buckets.get12 (לקטגוריית היעד)
rsync --dry-run storage.objects.list (לקטגוריות המקור והיעד)
service-agent resourceManager.projects.get
sign-url אין; עם זאת, לחשבון השירות שהמפתח שלו משמש חלק מהפקודה הזו, חייבת להיות הרשאה לבצע את הבקשה המקודדת בכתובת URL החתומה.

1ההרשאה הזו נדרשת רק אם רוצים שכללי המדיניות של IAM יהיו כלולים בפרטים.

2ההרשאה הזו נדרשת רק אם לא כוללים פרויקט חיוב בבקשה. למידע נוסף, ראו דרישות השימוש והגישה של 'מגיש הבקשה משלם'.

3ההרשאות האלה לא נדרשות אם הנושא כבר קיים ולחשבון השירות הרלוונטי יש גישה אליו.

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

5ההרשאה הזו נדרשת רק אם משתמשים בהעלאות מורכבות במקביל, או אם לא משתמשים בדגל --no-clobber אבל מוסיפים אובייקט שיש לו שם זהה לאובייקט שכבר קיים בקטגוריה.

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

7ההרשאה הזו נדרשת רק אם משתמשים בדגל --fetch-encrypted-object-hashes.

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

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

10ההרשאה הזו נדרשת רק אם משתמשים בדגל --delete-unmatched-destination-objects, או אם מוסיפים אובייקט שיש לו שם זהה לזה, אבל נתונים שונים מאלו של אובייקט שכבר קיים בקטגוריה.

11ההרשאה הזו נדרשת רק אם הבקשה מחייבת גם שימוש בדגל --override-unlocked-retention.

12ההרשאה הזו נדרשת כדי לבצע העלאות מורכבות מקבילות אם המאפיין storage/parallel_composite_upload_compatibility_check של ה-CLI של gcloud מוגדר ל-True.

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

‫14 ההרשאה הזו נדרשת רק אם הבקשה כוללת את הדגל --allow-overwrite והפעולה יוצרת אובייקט עם שם זהה לשם של אובייקט שכבר קיים בקטגוריה.

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

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

הדגל --billing-project ברמה העליונה

אם משתמשים ב--billing-project דגל גלובלי כדי לציין פרויקט שצריך לחייב בגין הבקשה, יש צורך בהרשאה serviceusage.services.use בפרויקט שצוין. לדוגמה, אפשר להשתמש בדגל --billing-project כשניגשים לקטגוריה שמופעלת בה האפשרות מגיש הבקשה משלם.

תווים כלליים לחיפוש ודגלים רקורסיביים

אם משתמשים בתווים כלליים לחיפוש של URI כדי לבחור מספר אובייקטים בפקודה, אתם צריכים הרשאה storage.objects.list בקטגוריה שמכילה את האובייקטים. באופן דומה, אם משתמשים בתווים כלליים לחיפוש של URI כדי לבחור מספר קטגוריות בפקודה, אתם צריכים הרשאה storage.buckets.list בפרויקטים שמכילים את הקטגוריות.

אם משתמשים בדגל --recursive, אתם צריכים הרשאה storage.objects.list בקטגוריה הרלוונטית, בנוסף להרשאות הנדרשות בשביל הפקודה הספציפית שבה משתמשים.

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