אתם יכולים להשתמש בגישה אחידה ברמת הקטגוריה כדי לאחד את בקרת הגישה למשאבים של Cloud Storage במערכת הרשאות אחת. כשמפעילים בקטגוריה גישה אחידה ברמת הקטגוריה, רק תפקידים של ניהול זהויות והרשאות גישה (IAM) ברמת הקטגוריה מעניקים גישה לקטגוריה ולאובייקטים שלה, ורשימות של בקרת גישה (ACL) לאובייקטים ספציפיים כבר לא חלות. הפעלת גישה אחידה ברמת הקטגוריה עוזרת לפשט את הדרך שבה מעניקים גישה למשאבים ב-Cloud Storage, והיא נדרשת כדי להשתמש בתכונות מסוימות, כמו תיקיות מנוהלות.
בדף הזה מוסבר איך מפעילים ומשביתים בקטגוריה ב-Cloud Storage גישה אחידה ברמת הקטגוריה, ואיך בודקים את הסטטוס שלה.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להגדרה ולניהול של גישה אחידה ברמת הקטגוריה, צריך לבקש מהאדמין להקצות לכם את התפקיד "אדמין של אחסון" (roles/storage.admin) בקטגוריה. התפקיד המוגדר מראש הזה כולל את ההרשאות שנדרשות כדי להגדיר ולנהל גישה אחידה ברמת הקטגוריה. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע Required Permissions:
ההרשאות הנדרשות
storage.buckets.getstorage.buckets.list- ההרשאה הזו נדרשת רק אם אתם מתכננים להשתמש במסוףGoogle Cloud כדי לבצע את ההוראות שבדף הזה.
storage.buckets.update
יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקידים בהתאמה אישית.
במאמר שימוש ב-IAM עם קטגוריות מוסבר איך מקצים תפקידים בקטגוריות.
בדיקת השימוש ברשימת ACL
לפני שמפעילים גישה אחידה ברמת הקטגוריה, משתמשים ב-Cloud Monitoring כדי לוודא שהקטגוריה לא משתמשת ברשימות ACL לתהליכי עבודה. למידע נוסף ראו בדיקת השימוש של אובייקט ברשימת ACL.
המסוף
כדי לראות את המדדים של משאב במעקב באמצעות Metrics Explorer:
-
במסוף Google Cloud , נכנסים לדף leaderboard Metrics explorer:
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה שכותרת המשנה שלה היא Monitoring.
- בסרגל הכלים של מסוף Google Cloud , בוחרים את הפרויקט ב- Google Cloud . בהגדרות של App Hub, בוחרים את הפרויקט המארח של App Hub או את פרויקט הניהול של התיקייה לניהול אפליקציות.
- ברכיב Metric, מרחיבים את התפריט Select a metric, מזינים
ACLs usageבסרגל הסינון ומשתמשים בתפריטי המשנה כדי לבחור את סוג המשאב הספציפי ואת המדד:- בתפריט Active resources בוחרים באפשרות GCS Bucket.
- בתפריט Active metric categories בוחרים באפשרות Authz.
- בתפריט Active metrics בוחרים באפשרות ACLs usage.
- לוחצים על אישור.
כדי להוסיף מסננים שמסירים סדרות של נתונים מתוצאות השאילתה, משתמשים ברכיב Filter.
- מגדירים את אופן התצוגה של הנתונים. לדוגמה, כדי להציג את הנתונים לפי פעולת ACL, ברכיב Aggregation מגדירים את התפריט הראשון ל-Sum ואת התפריט השני ל-acl_operation.
מידע נוסף על הגדרת תרשים זמין במאמר איך בוחרים מדדים כשמשתמשים ב-Metrics Explorer.
ראו storage לרשימה מלאה של המדדים שזמינים ל-Cloud Storage. למידע על סדרות זמנים ראו מדדים, סדרות זמנים ומשאבים.
API בפורמט JSON
להתקין ולהפעיל את ה-CLI של gcloud, כדי שתוכלו ליצור אסימון גישה לכותרת
Authorization.כדי לשלוח קריאה ל-API בפורמט JSON של Monitoring, משתמשים ב-
cURL:curl \ 'https://monitoring.googleapis.com/v3/projects/PROJECT_ID/timeSeries?filter=metric.type%20%3D%20%22storage.googleapis.com%2Fauthz%2Facl_operations_count%22&interval.endTime=END_TIME&interval.startTime=START_TIME' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' \ --header 'Accept: application/json'
כאשר:
-
PROJECT_IDהוא מזהה או מספר הפרויקט שבשימוש שלו ב-ACL אתם רוצים לצפות. לדוגמה,my-project. -
END_TIMEהוא נקודת הסיום של טווח התאריכים שבו אתם רוצים לצפות בשימוש ב-ACL. לדוגמה,2019-11-02T15:01:23.045123456Z. -
START_TIMEהוא נקודת ההתחלה של טווח התאריכים שבו אתם רוצים לצפות בשימוש ב-ACL. לדוגמה,2016-10-02T15:01:23.045123456Z.
-
אם הבקשה מחזירה אובייקט ריק {}, לא היה שימוש בזמן האחרון ב-ACL בפרויקט שלכם.
הגדרת גישה אחידה ברמת הקטגוריה
המסוף
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
ברשימת הקטגוריות, לוחצים על שם הקטגוריה שבה רוצים להפעיל או להשבית את הגישה האחידה ברמת הקטגוריה.
לוחצים על הכרטיסייה Permissions בחלק העליון של הדף.
בשדה בקרת גישה לוחצים על הקישור Switch to.
בתפריט שמופיע, בוחרים באפשרות Uniform או Fine-grained.
לוחצים על Save.
במאמר פתרון בעיות מוסבר איך מקבלים מידע מפורט על שגיאות בנושא פעולות ב-Cloud Storage שנכשלו במסוף Google Cloud .
שורת הפקודה
משתמשים בפקודה gcloud storage buckets update:
gcloud storage buckets update gs://BUCKET_NAME --STATE
כאשר:
-
BUCKET_NAMEהוא שם הקטגוריה הרלוונטית. לדוגמה,my-bucket. -
STATEהואuniform-bucket-level-accessכדי להפעיל גישה אחידה ברמת הקטגוריה, אוno-uniform-bucket-level-accessכדי להשבית אותה.
ספריות לקוח
C++
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C++ API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
C#
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C# API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Go
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Go API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Java
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Java API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Node.js
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Node.js API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
PHP
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage PHP API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Python
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Python API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Ruby
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Ruby API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
Rust
הדוגמה הבאה מפעילה בקטגוריה גישה אחידה ברמת הקטגוריה:
הדוגמה הבאה משביתה בקטגוריה גישה אחידה ברמת הקטגוריה:
ממשקי API בארכיטקטורת REST
API בפורמט JSON
להתקין ולהפעיל את ה-CLI של gcloud, כדי שתוכלו ליצור אסימון גישה לכותרת
Authorization.יוצרים קובץ JSON שמכיל את הפרטים הבאים:
{ "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": STATE } } }
כאשר STATE הוא
trueאוfalse.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשה של קטגורייתPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=iamConfiguration"
כאשר:
-
JSON_FILE_NAMEהוא הנתיב לקובץ שיצרתם בשלב 2. -
BUCKET_NAMEהוא שם הקטגוריה הרלוונטית. לדוגמה,my-bucket.
-
API בפורמט XML
אי אפשר להשתמש ב-API בפורמט XML כדי לעבוד עם גישה אחידה ברמת הקטגוריה. במקום זאת, צריך להשתמש באחד מהכלים האחרים של Cloud Storage, כמו ה-CLI של gcloud.
צפייה בסטטוס של גישה אחידה ברמת הקטגוריה
המסוף
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
לוחצים על שם הקטגוריה שרוצים לראות את הסטטוס שלה.
לוחצים על הכרטיסייה Configuration.
סטטוס הגישה האחידה ברמת הקטגוריה של הקטגוריה מופיע בשדה Access control.
במאמר פתרון בעיות מוסבר איך מקבלים מידע מפורט על שגיאות בנושא פעולות ב-Cloud Storage שנכשלו במסוף Google Cloud .
שורת הפקודה
משתמשים בפקודה gcloud storage buckets describe עם הדגל --format:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(uniform_bucket_level_access)"
כאשר BUCKET_NAME הוא השם של הקטגוריה הרלוונטית. לדוגמה, my-bucket.
אם הפעולה בוצעה ללא שגיאות, התגובה נראית כך:
uniform_bucket_level_access: true
ספריות לקוח
C++
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C++ API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
C#
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C# API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Go
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Go API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Java
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Java API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Node.js
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Node.js API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
PHP
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage PHP API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Python API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Ruby
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Ruby API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Rust
ממשקי API בארכיטקטורת REST
API בפורמט JSON
להתקין ולהפעיל את ה-CLI של gcloud, כדי שתוכלו ליצור אסימון גישה לכותרת
Authorization.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשה של קטגורייתGETשכוללת אתfieldsהרצוי:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=iamConfiguration"
כאשר
BUCKET_NAMEהוא השם של הקטגוריה הרלוונטית. לדוגמה,my-bucket.אם בקטגוריה מופעלת גישה אחידה ברמת הקטגוריה, התגובה נראית כך:
{ "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true, "lockedTime": "LOCK_DATE" } } }
API בפורמט XML
אי אפשר להשתמש ב-API בפורמט XML כדי לעבוד עם גישה אחידה ברמת הקטגוריה. במקום זאת, צריך להשתמש באחד מהכלים האחרים של Cloud Storage, כמו ה-CLI של gcloud.