בדף הזה מוסבר איך משתמשים ביועץ ב-Storage Intelligence כדי לזהות אובייקטים שמפרים את הגדרת אכיפת ההצפנה בקטגוריה שלהם, ולהצפין אותם מחדש.
כשאוכפים או מגבילים את סוגי ההצפנה של קטגוריה, מערכת Cloud Storage אוכפת את ההגדרה הזו על כל האובייקטים החדשים או המשוכתבים בקטגוריה. עם זאת, Cloud Storage לא מצפין מחדש באופן אוטומטי אובייקטים קיימים שהעליתם לפני שההגדרה נכנסה לתוקף. האובייקטים האלה נשארים מוצפנים בשיטת ההצפנה המקורית שלהם. מידע נוסף על שיטות ההצפנה הזמינות מופיע במאמר אפשרויות להצפנת נתונים.
היועץ ב-Storage Intelligence מציג את הממצא Objects violate enforced encryption rules כשקטגוריה מכילה אובייקטים שמשתמשים בשיטת הצפנה מוגבלת. ממצא הוא אנומליה או פער בהגדרות האבטחה שזוהו במדדים ובמטא-נתונים של האובייקטים, ודורשים התייחסות. מידע כללי על יועץ ב-Storage Intelligence בקטלוג הממצאים מופיעה רשימה מלאה של הממצאים.
ערכי סף שמפעילים ממצא
כשמפעילים את Storage Intelligence, המערכת של Cloud Storage בודקת באופן אוטומטי את המטא-נתונים של ההצפנה ברמת האובייקט, בהתאם להגדרות של אכיפת ההצפנה ברמת הקטגוריה בפרויקט, בתיקייה או בארגון. היועץ ב-Storage Intelligence יוצר ממצא כשקטגוריה עומדת בשני הקריטריונים הבאים:
- הקטגוריה מגבילה שיטת הצפנה אחת או יותר בהגדרות
enforcedEncryptionAllowedTypesשלה, כמו הצפנה רגילה (הצפנת ברירת המחדל של Google אוGMEK), מפתחות הצפנה בניהול הלקוח (CMEK) או מפתחות הצפנה מטעם הלקוח (CSEK). - הקטגוריה מכילה לפחות אובייקט אחד שבו שדה המטא-נתונים
encryptionTypeלא נמצא ברשימתenforcedEncryptionAllowedTypesשל הקטגוריה.
הממצאים הראשוניים של נקודת ההשוואה מופיעים תוך 48 שעות אחרי שמפעילים את Storage Intelligence, ומתרעננים כל 24 שעות. כדי לצמצם את מספר ההתראות, היועץ ב-Storage Intelligence מקבץ בלוח הבקרה את ההפרות ברמת האובייקט לפי קטגוריה. אפשר לשלוח שאילתות לגבי מטא-נתונים של הצפנה ברמת האובייקט במערכי נתונים של Storage Insights.
איך מגיבים לממצאים
כדי להגיב לממצא, מזהים את האובייקטים המושפעים בכל קטגוריה ומשכתבים את האובייקטים שלא עומדים בדרישות באמצעות שיטת הצפנה מותרת:
צפו בפרטי הממצא כדי לזהות את הקטגוריות המושפעות ואת סוגי ההצפנה המותרים שלהן (
CMEK,GMEKאוCSEK).אופציונלי: כדי להציג את רשימת האובייקטים בקטגוריה שמושפעת מהבעיה ומפרה את הגדרת ההצפנה שנאכפת, שולחים שאילתה לקבוצת הנתונים של Storage Insights ב-BigQuery. אם לא הגדרתם מערך נתונים מקושר, קראו את המאמר הגדרת מערכי נתונים של Storage Insights.
SELECT bucket, name, encryptionType FROM `DATASET_NAME.object_attributes_latest_snapshot_view` WHERE bucket = 'BUCKET_NAME' AND encryptionType NOT IN (ALLOWED_ENCRYPTION_TYPES) AND timeDeleted IS NULL AND softDeleteTime IS NULL;
מחליפים את מה שכתוב בשדות הבאים:
-
DATASET_NAME: השם של מערך הנתונים המקושר של Storage Insights ב-BigQuery. -
BUCKET_NAME: שם הקטגוריה הרלוונטית. -
ALLOWED_ENCRYPTION_TYPES: רשימה מופרדת בפסיקים של סוגי ההצפנה שהקטגוריה מאפשרת, כמו'CMEK'או'CMEK', 'GMEK'.
-
אתם יכולים להיעזר בטבלה הבאה כדי לבחור את שיטת ההצפנה מחדש של האובייקטים הפעילים:
תרחיש הפעולה המומלצת פרטים הקטגוריה מאפשרת מפתחות הצפנה בניהול הלקוח ( CMEK)הצפנה מחדש של אובייקטים באמצעות CMEK לאובייקטים פעילים ב- GMEK, מייצאים קובצי מניפסט בפורמט CSV מ-BigQuery ומריצים משימה של פעולות רבות על פריטי אחסון כדי לשכתב את האובייקטים באמצעות מפתח Cloud KMS. לאובייקטים שמוצפנים באמצעות CSEK, מריצים את הפקודהgcloud storage objects update.הקטגוריה מאפשרת הצפנה רגילה ( GMEK)הצפנה מחדש של אובייקטים באמצעות הצפנה רגילה (GMEK) מוודאים שלקטגוריה אין מפתח ברירת מחדל של Cloud KMS, ואז משתמשים בפקודה gcloud storage objects updateעם הדגל--clear-encryption-keyכדי לשכתב את האובייקטים המושפעים באמצעות הצפנה רגילה.קטגוריה מאפשרת רק מפתחות הצפנה מטעם הלקוח (CSEK) ( CSEK)הצפנה מחדש של אובייקטים באמצעות CSEK משתמשים בפקודה gcloud storage objects updateעם הדגל--encryption-keyכדי לשכתב את האובייקטים המושפעים באמצעות מפתח ההצפנה AES-256.אחרי שתצפינו מחדש את כל האובייקטים בקטגוריה שלא עומדים בדרישות, הממצא יימחק מהקטגוריה הזו במהלך מחזור הרענון הבא של 24 שעות. עם זאת, הממצא נשאר פעיל במקרים הבאים עד שאתם או Cloud Storage מוחקים באופן סופי את גרסאות האובייקטים שנשמרו:
- ניהול גרסאות של אובייקטים: כשכותבים מחדש אובייקט פעיל, Cloud Storage שומר את האובייקט המקורי שלא תואם כגרסה לא עדכנית. כדי לנקות את הממצא, מוחקים את הגרסאות הלא עדכניות של האובייקטים או מגדירים כלל
Deleteלניהול מחזור החיים של האובייקטים. - מחיקה רכה: כשמשכתבים או מוחקים אובייקט, Cloud Storage שומר את הגרסה המקורית שלא תואמת במצב של מחיקה רכה עד שתפוג תקופת השמירה של המחיקה הרכה בקטגוריה.
- ניהול גרסאות של אובייקטים: כשכותבים מחדש אובייקט פעיל, Cloud Storage שומר את האובייקט המקורי שלא תואם כגרסה לא עדכנית. כדי לנקות את הממצא, מוחקים את הגרסאות הלא עדכניות של האובייקטים או מגדירים כלל
הצפנה מחדש של אובייקטים באמצעות CMEK
אם הקטגוריה מאפשרת מפתחות הצפנה בניהול הלקוח (CMEK), צריך להצפין מחדש את האובייקטים המושפעים על סמך שיטת ההצפנה הנוכחית שלהם.
הצפנה מחדש של אובייקטים שמוצפנים באמצעות GMEK בקנה מידה נרחב באמצעות פעולות רבות על פריטי אחסון
כדי להצפין מחדש אובייקטים שמוצפנים באמצעות GMEK באמצעות CMEK בקנה מידה נרחב, מייצאים קובצי מניפסט בפורמט CSV מ-BigQuery ומריצים משימה של פעולות רבות על פריטי אחסון:
מריצים את השאילתה הבאה של
EXPORT DATAב-BigQuery כדי ליצור מניפסט CSV באמצעות מערכי נתונים של Storage Insights לאובייקטים פעילים שמושפעים ומשתמשים בהצפנה רגילה (GMEK):EXPORT DATA OPTIONS( uri='gs://DESTINATION_BUCKET/manifests/objects_violating_enforced_policies_*.csv', format='CSV', overwrite=true, header=true ) AS SELECT bucket, name FROM `DATASET_NAME.object_attributes_latest_snapshot_view` WHERE bucket = 'BUCKET_NAME' AND encryptionType = 'GMEK' AND timeDeleted IS NULL AND softDeleteTime IS NULL;
מחליפים את מה שכתוב בשדות הבאים:
-
DESTINATION_BUCKET: השם של הקטגוריה ב-Cloud Storage שבה רוצים לאחסן את קובצי המניפסט בפורמט CSV שמייצאים. -
DATASET_NAME: השם של מערך הנתונים המקושר של Storage Insights ב-BigQuery. -
BUCKET_NAME: שם הקטגוריה הרלוונטית.
-
משלימים את הדרישות המוקדמות לביצוע פעולות רבות על פריטי אחסון, ומבקשים מהאדמין להקצות את התפקיד Cloud KMS CryptoKey Encrypter/Decrypter (
roles/cloudkms.cryptoKeyEncrypterDecrypter) במפתח Cloud KMS לשני סוכני השירות הבאים:- סוכן השירות של פעולות רבות על פריטי אחסון (
service-PROJECT_NUMBER@gcp-sa-storagebatchoperations.iam.gserviceaccount.com) - סוכן השירות של Cloud Storage (
service-PROJECT_NUMBER@gs-project-accounts.iam.gserviceaccount.com)
מחליפים את
PROJECT_NUMBERבמספר הפרויקט שמכיל את הקטגוריה.- סוכן השירות של פעולות רבות על פריטי אחסון (
מריצים את הפקודה
gcloud storage batch-operations jobs createכדי ליצור משימה של פעולות רבות על פריטי אחסון באמצעות קובץ המניפסט, ומשכתבים את האובייקטים באמצעות המפתח של Cloud KMS. כדי לאמת את הגדרות המשימה לפני שמשנים אובייקטים, צריך לכלול את הדגל--dry-run:gcloud storage batch-operations jobs create JOB_NAME \ --bucket="BUCKET_NAME" \ --manifest-location="gs://DESTINATION_BUCKET/manifests/objects_violating_enforced_policies_*.csv" \ --rewrite-object="kms-key=KMS_KEY"
מחליפים את מה שכתוב בשדות הבאים:
-
JOB_NAME: מזהה ייחודי של המשימה באצווה, למשלre-encrypt-objects-job. -
BUCKET_NAME: שם הקטגוריה הרלוונטית. -
DESTINATION_BUCKET: שם הקטגוריה שמכילה את קובצי המניפסט שיוצאו. -
KMS_KEY: שם המשאב של מפתח Cloud KMS שבו רוצים להשתמש כדי להצפין את האובייקטים. המפתח צריך להיות באותו מיקום של הקטגוריה, בפורמטprojects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/CRYPTO_KEY.
-
הצפנה מחדש של אובייקטים שמוצפנים באמצעות CSEK באמצעות Google Cloud CLI
מכיוון ש- Google Cloud לא מאחסן מפתחות הצפנה באספקת הלקוח (CSEK), אי אפשר להשתמש בפעולות רבות על פריטי אחסון כדי לפענח אובייקטים שמוצפנים באמצעות CSEK. כדי להצפין מחדש אובייקטים שמוצפנים באמצעות CSEK באמצעות CMEK, מריצים את הפקודה gcloud storage objects update עם הדגלים --decryption-keys ו---encryption-key:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME \ --decryption-keys=DECRYPTION_KEY \ --encryption-key=KMS_KEY
מחליפים את מה שכתוב בשדות הבאים:
-
BUCKET_NAME: שם הקטגוריה המושפעת. -
OBJECT_NAME: שם האובייקט המוצפן באמצעות CSEK שרוצים להצפין מחדש. כדי לעדכן כמה אובייקטים בפקודה אחת, משתמשים בתווים כלליים לחיפוש של URI או בדגל--read-paths-from-stdin(-I). -
DECRYPTION_KEY: מפתח AES-256 בקידוד Base64 בתקן RFC 4648 שמצפין את האובייקט. -
KMS_KEY: שם המשאב של מפתח Cloud KMS שבו רוצים להשתמש כדי להצפין את האובייקט, בפורמטprojects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/CRYPTO_KEY.
הצפנה מחדש של אובייקטים באמצעות הצפנה רגילה (GMEK)
כדי להצפין מחדש אובייקטים באמצעות הצפנה רגילה (הצפנת ברירת המחדל של Google או GMEK), צריך לוודא שלקטגוריה אין מפתח ברירת מחדל של Cloud KMS ולמחוק את מפתח ההצפנה בהתאמה אישית בכל אחד מהאובייקטים המושפעים:
מוודאים שלקטגוריה אין מפתח ברירת מחדל של Cloud KMS. כשמוחקים את מפתח ההצפנה בהתאמה אישית של אובייקט, Cloud Storage מצפין את האובייקט באמצעות הצפנה רגילה (
GMEK) רק אם לקטגוריה אין מפתח Cloud KMS שמוגדר כברירת מחדל. אם לקטגוריה יש מפתח ברירת מחדל של Cloud KMS, Cloud Storage מצפין את האובייקט באמצעות המפתח הזה. אם בקטגוריה יש גם הגבלה על CMEK, פעולת הכתיבה מחדש נכשלת.כדי להסיר מקטגוריה את מפתח ברירת המחדל של Cloud KMS, מריצים את הפקודה
gcloud storage buckets updateעם הדגל--clear-default-encryption-key:gcloud storage buckets update gs://BUCKET_NAME \ --clear-default-encryption-key
מחליפים את
BUCKET_NAMEבשם של הקטגוריה הרלוונטית.משתמשים בפקודה
gcloud storage objects updateעם הדגל--clear-encryption-keyכדי לשכתב את האובייקטים המושפעים באמצעות הצפנה רגילה. אם האובייקטים מוצפנים באמצעות מפתחות הצפנה באספקת הלקוח (CSEK), צריך לכלול גם את הדגל--decryption-keys:gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME \ --clear-encryption-key \ [--decryption-keys=DECRYPTION_KEY]
מחליפים את מה שכתוב בשדות הבאים:
-
BUCKET_NAME: שם הקטגוריה הרלוונטית. -
OBJECT_NAME: שם האובייקט שרוצים להצפין מחדש. כדי לעדכן כמה אובייקטים בפקודה אחת, משתמשים בתווים כלליים לחיפוש של URI (כמוgs://BUCKET_NAME/**) או בדגל--read-paths-from-stdin(-I). -
DECRYPTION_KEY: אם האובייקט מוצפן באמצעותCSEK, מפתח AES-256 בקידוד base64 בתקן RFC 4648 שמצפין את האובייקט. אם האובייקט מוצפן באמצעותCMEK, משמיטים את הדגל--decryption-keys.
-
הצפנה מחדש של אובייקטים באמצעות CSEK
אם הקטגוריה מאפשרת רק מפתחות הצפנה באספקת הלקוח (CSEK), משתמשים בפקודה gcloud storage objects update עם הדגל --encryption-key כדי לשכתב את האובייקטים המושפעים באמצעות מפתח ההצפנה AES-256. אם אובייקט מוצפן באמצעות CSEK אחר, צריך לכלול גם את הדגל --decryption-keys:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME \ --encryption-key=YOUR_ENCRYPTION_KEY \ [--decryption-keys=DECRYPTION_KEY]
מחליפים את מה שכתוב בשדות הבאים:
-
BUCKET_NAME: שם הקטגוריה הרלוונטית. -
OBJECT_NAME: שם האובייקט שרוצים להצפין מחדש. כדי לעדכן כמה אובייקטים בפקודה אחת, משתמשים בתווים כלליים לחיפוש של URI או בדגל--read-paths-from-stdin(-I). -
YOUR_ENCRYPTION_KEY: מחרוזת מפתח ההצפנה AES-256 בקידוד base64 בתקן RFC 4648. -
DECRYPTION_KEY: אם האובייקט מוצפן באמצעותCSEKאחר, מפתח AES-256 בקידוד base64 בתקן RFC 4648 שמצפין את האובייקט. אם האובייקט מוצפן באמצעותGMEKאוCMEK, משמיטים את הדגל--decryption-keys.
המאמרים הבאים
- משימות עיקריות:
- עיון בממצאים אחרים:
- הצפנה מחדש של אובייקטים שמפירים את כללי מדיניות ברירת המחדל של CMEK בקטגוריה
- אופטימיזציה של השימוש בנתונים ב-Coldline Storage וב-Archive Storage
- שיפור הביצועים על ידי צמצום שגיאות בבקשות שמוגבלות בקצב
- זיהוי צריכת נפח אחסון שחורגת מהמגמה
- ניהול תעבורת נתונים יוצאת לכמה אזורים
- עיון בקטלוג העזר של הממצאים
- מושגים קשורים: