מפתחות הצפנה בניהול הלקוח (CMEK)

במסמך הזה מוסבר איך להשתמש ב-Cloud Key Management Service‏ (Cloud KMS) כדי לנהל מפתחות הצפנה בניהול הלקוח (CMEK). שימוש ב-CMEK של Cloud KMS מאפשר לכם להיות הבעלים של המפתחות שמגנים על הנתונים שלכם במצב מנוחה ב-Google Cloudולשלוט בהם.

השוואה בין CMEK לבין Google-owned and Google-managed encryption keys

המפתחות שאתם יוצרים ב-Cloud KMS הם מפתחות בניהול הלקוח. נאמר על שירותיGoogle Cloud שמשתמשים במפתחות שלכם שיש להם שילוב של CMEK. ההבדלים בין הצפנת ברירת המחדל של Google Cloudבמנוחה לבין מפתחות בניהול הלקוח הם:

סוג המפתח מנוהל על ידי הלקוח ‫Google-owned and Google-managed encryption key (Google default encryption)

הרשאה לצפייה במטא-נתונים חשובים

כן

לא

בעלות על מפתחות1

לקוח/ה

Google

יכולים לנהל2 ולשלוט3 במפתחות

לקוח, שליטה ידנית בלבד

Google

תמיכה בדרישות רגולטוריות לגבי מפתחות בניהול הלקוח

כן

לא

שיתוף מפתחות

ייחודיים ללקוח

בדרך כלל, נתונים מכמה לקוחות מוגנים באמצעות מפתחות הצפנה משותפים (KEK).

שליטה ברוטציית מפתחות

כן

לא

מדיניות הארגון לגבי CMEK

כן

לא

רישום ביומן של גישה מנהלתית וגישה לנתונים למפתחות הצפנה

כן

לא

הפרדה לוגית של נתונים באמצעות הצפנה

כן

לא

תמחור

משתנה בהתאם לרמת ההגנה

חינם

1 הבעלים של המפתח מציין למי יש זכויות על המפתח. הגישה של Google למפתחות שבבעלותכם מוגבלת מאוד או לא קיימת.

2 ניהול המפתחות כולל את המשימות הבאות:

  • יוצרים מפתחות.
  • בוחרים את רמת ההגנה של המפתחות.
  • הקצאת סמכות לניהול המפתחות.
  • שליטה בגישה למפתחות.
  • שליטה בשימוש במפתחות.
  • הגדרה ושינוי של תקופת הרוטציה של המפתחות, או הפעלה של רוטציה של מפתחות.
  • משנים את הסטטוס של המפתח.
  • השמדת גרסאות של מפתחות.

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

הצפנת ברירת המחדל באמצעות Google-owned and Google-managed encryption keys

כל הנתונים שמאוחסנים ב- Google Cloud מוצפנים במצב מנוחה באמצעות אותן מערכות מוקשחות לניהול מפתחות שבהן Google Cloud משתמשת לנתונים המוצפנים שלה. מערכות ניהול המפתחות האלה מספקות בקרות גישה מחמירות למפתחות וביקורת, ומצפינות את נתוני המשתמשים באחסון באמצעות תקן ההצפנה AES-256. Google Cloud היא הבעלים של המפתחות שמשמשים להצפנת הנתונים שלכם ושולטת בהם. אין לכם אפשרות לראות או לנהל את המפתחות האלה, או לבדוק את יומני השימוש במפתחות. אותו מפתח להצפנת מפתחות הצפנה (KEK) יכול לשמש לנתונים מכמה לקוחות. אין צורך בהגדרה, בקביעת הגדרות או בניהול.

מפתחות הצפנה בניהול הלקוח (CMEK)

מפתחות הצפנה בניהול הלקוח הם מפתחות הצפנה שנמצאים בבעלותכם. היכולת הזו מאפשרת לכם לקבל שליטה רבה יותר על המפתחות שמשמשים להצפנת נתונים במנוחה בשירותים נתמכים Google Cloud , ומספקת גבול קריפטוגרפי מסביב לנתונים שלכם.

שירותים שתומכים ב-CMEK כוללים שילוב CMEK. שילוב CMEK הוא טכנולוגיית הצפנה בצד השרת שאפשר להשתמש בה במקום בהצפנה שמוגדרת כברירת מחדל ב-Google Cloud. אחרי שמגדירים את CMEK, סוכן השירות של המשאב מטפל בפעולות של הצפנה ופענוח של משאבים. מכיוון ששירותים עם שילוב של CMEK מטפלים בגישה למשאב המוצפן, ההצפנה והפענוח יכולים להתבצע באופן שקוף, בלי שהמשתמשים יצטרכו לעשות משהו. החוויה של גישה למשאבים דומה לשימוש בהצפנה שמוגדרת כברירת מחדל ב- Google Cloud. מידע נוסף על שילוב CMEK זמין במאמר מה שירות עם שילוב CMEK מספק.

אפשר להשתמש במספר בלתי מוגבל של גרסאות מפתח לכל מפתח.

כדי לדעת אם שירות תומך ב-CMEK, אפשר לעיין ברשימת השירותים הנתמכים.

השימוש ב-Cloud KMS כרוך בעלויות שקשורות למספר גרסאות המפתח ולפעולות הקריפטוגרפיות שמתבצעות באמצעות גרסאות המפתח האלה.

מתי כדאי להשתמש במפתחות הצפנה בניהול הלקוח

אפשר להשתמש במפתחות CMEK בשירותים תואמים כדי להשיג את המטרות הבאות:

  • בעלות על מפתחות ההצפנה.

  • שליטה וניהול של מפתחות ההצפנה, כולל בחירת מיקום, רמת הגנה, יצירה, בקרת גישה, רוטציה, שימוש והשמדה.

  • ליצור חומר מפתח ב-Cloud KMS או לייבא חומר מפתח שמנוהל מחוץ ל- Google Cloud.

  • הגדרת מדיניות לגבי המקומות שבהם אפשר להשתמש במפתחות.

  • מחיקה סלקטיבית של נתונים שמוגנים על ידי המפתחות במקרה של ביטול הרשאה או כדי לטפל באירועי אבטחה (מחיקה קריפטוגרפית).

  • יצירה ושימוש במפתחות ייחודיים ללקוח, כדי ליצור גבול קריפטוגרפי סביב הנתונים.

  • רישום ביומן של גישה אדמיניסטרטיבית וגישה לנתונים למפתחות הצפנה.

  • עמידה בתקנות קיימות או עתידיות שמחייבות את השימוש באחד מהיעדים האלה.

מה שירות משולב CMEK מספק

בדומה להצפנת ברירת המחדל של Google Cloud,‏ CMEK היא הצפנה סימטרית בצד השרת של נתוני הלקוחות. ההבדל מההצפנה שמוגדרת כברירת מחדל ב- Google Cloudהוא שההגנה באמצעות CMEK משתמשת במפתח שנמצא בשליטת הלקוח.

  • שירותי ענן שיש להם שילוב CMEK משתמשים במפתחות שאתם יוצרים ב-Cloud KMS כדי להגן על המשאבים שלכם.

  • שירותים שמשולבים עם Cloud KMS משתמשים בהצפנה סימטרית.

  • אתם בוחרים את רמת ההגנה של המפתח.

  • כל המפתחות הם AES-GCM‏ 256 ביט.

  • חומר המפתח אף פעם לא יוצא מגבולות המערכת של Cloud KMS.

  • המפתחות הסימטריים משמשים להצפנה ולפענוח במודל ההצפנה של מעטפת.

שירותים עם שילובי CMEK מטפלים בגישה למשאבים

לגורם הראשי שיוצר משאבים בשירות המשולב עם CMEK או צופה בהם לא נדרשת ההרשאה Cloud KMS CryptoKey Encrypter/Decrypter ‏(roles/cloudkms.cryptoKeyEncrypterDecrypter) עבור ה-CMEK שמשמש להגנה על המשאב.

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

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

לא נדרשת גישה נוספת של השולח, ומכיוון שסוכן השירות מטפל בהצפנה ובפענוח ברקע, חוויית המשתמש בגישה למשאבים דומה לשימוש בהצפנה שמוגדרת כברירת מחדל ב- Google Cloud.

תכנון ויצירה של מפתחות CMEK

כשמשתמשים במפתחות CMEK, צריך לתכנן וליצור אוספי מפתחות, מפתחות ומיקומי משאבים לפני שיוצרים משאבים מוגנים. אחר כך תוכלו להשתמש במפתחות כדי להגן על המשאבים.

הוראות מדויקות להפעלת CMEK מופיעות במסמכי העזרה שלGoogle Cloud השירות הרלוונטי. בשירותים מסוימים, כמו GKE, יש כמה שילובי CMEK להגנה על סוגים שונים של נתונים שקשורים לשירות. אפשר לצפות לשלבים דומים לאלה:

  1. יוצרים אוסף מפתחות של Cloud KMS או בוחרים אוסף מפתחות קיים. כשיוצרים את מחזיק המפתחות, צריך לבחור מיקום שקרוב גיאוגרפית למשאבים שרוצים להגן עליהם. אוסף המפתחות יכול להיות באותו פרויקט שבו נמצאים המשאבים שאתם מגנים עליהם, או בפרויקטים שונים. שימוש בפרויקטים שונים מאפשר לכם שליטה רבה יותר בתפקידי IAM ועוזר לתמוך בהפרדת תפקידים.

  2. יוצרים או מייבאים מפתח Cloud KMS באוסף המפתחות שנבחר. המפתח הזה הוא מפתח ההצפנה שבניהול הלקוח (CMEK).

  3. מקצים את תפקיד ה-IAM של הצפנה/פענוח של CryptoKey ‏(roles/cloudkms.cryptoKeyEncrypterDecrypter) ב-CMEK לחשבון השירות של השירות.

  4. כשיוצרים משאב, מגדירים את המשאב לשימוש ב-CMEK. לדוגמה, אפשר להגדיר טבלה ב-BigQuery כדי להגן על נתונים במצב מנוחה בטבלה.

כדי לקבל גישה לנתונים, המבקש לא צריך גישה ישירה למפתח CMEK.

כל עוד לסוכן השירות יש את התפקיד CryptoKey Encrypter/Decrypter, השירות יכול להצפין ולפענח את הנתונים שלו. אם תבטלו את התפקיד הזה, או אם תשביתו או תמחקו את CMEK, לא תהיה גישה לנתונים האלה.

תאימות ל-CMEK

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

מדיניות הארגון ל-CMEK

Google Cloud מציע אילוצים על מדיניות הארגון כדי לוודא שימוש עקבי ב-CMEK במשאב ארגוני. האילוצים האלה מספקים לאדמינים של הארגון אמצעי בקרה שמאפשרים להם לחייב שימוש ב-CMEK ולציין מגבלות ואמצעי בקרה על מפתחות Cloud KMS שמשמשים להגנה באמצעות CMEK, כולל:

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