כברירת מחדל, Filestore מצפין תוכן של לקוחות במנוחה. Filestore מטפל בהצפנה בשבילכם בלי שתצטרכו לבצע פעולות נוספות. האפשרות הזו נקראת הצפנת ברירת המחדל של Google.
אם אתם רוצים לשלוט במפתחות ההצפנה, אתם יכולים להשתמש במפתחות הצפנה בניהול הלקוח (CMEK) ב-Cloud KMS עם שירותים שמשולבים עם CMEK, כולל Filestore. שימוש במפתחות Cloud KMS מאפשר לכם לשלוט ברמת ההגנה, במיקום, בלוח הזמנים של הרוטציה, בשימוש ובהרשאות הגישה, ובגבולות הקריפטוגרפיים. בנוסף, באמצעות Cloud KMS תוכלו לצפות ביומני ביקורת ולשלוט במחזורי החיים של המפתחות. במקום ש-Google תהיה הבעלים של מפתחות ההצפנה של המפתחות (KEK) הסימטריים שמגנים על הנתונים שלכם ותנהל אותם, אתם שולטים במפתחות האלה ומנהלים אותם ב-Cloud KMS.
אחרי שמגדירים את המשאבים עם CMEK, חוויית הגישה למשאבי Filestore דומה לשימוש בהצפנה שמוגדרת כברירת מחדל ב-Google. מידע נוסף על אפשרויות ההצפנה זמין במאמר מפתחות הצפנה בניהול הלקוח (CMEK).
יש תמיכה ב-CMEK לשימוש במופעים של Filestore ובגיבויים.
אפשרויות CMEK
Filestore תומך במפתחות CMEK שמאוחסנים כמפתחות תוכנה, כמפתחות חומרה באשכול HSM וכמפתחות שמאוחסנים באופן חיצוני ב-Cloud External Key Manager (Cloud EKM).
מידע נוסף זמין במאמר בנושא Cloud Key Management Service.
שיבושים בשירות EKM
מפתחות חיצוניים מנוהלים על ידי צד שלישי; במקרים כאלה,Google Cloud לא אחראית לזמינות המפתחות.
אם Cloud Key Management Service (Cloud KMS) מקבל הודעה מ-External Key Manager (EKM) על כך שלא ניתן להגיע למפתח חיצוני, המשתמשים מקבלים הודעה על כך.ekm_key_unreachable_detected במשך שעה אחת לכל היותר, למשתמשים יש גישה מוגבלת לפעולות במופע. אחרי שעה, אם הסטטוס של המפתח לא משתנה, הפעולות הבאות יחולו:
- המפתח מושבת.
- כל פעולות ההצפנה והפענוח נכשלות.
- מופע Filestore מושעה.
במקרים מסוימים, כמו אירוע לא מתוכנן כמו הפעלה מחדש של מכונת VM, יכול להיות שהגישה למופע תופרע לפני שעה.
אפשר לראות התראות על מפתחות שלא ניתן להגיע אליהם בדף הפרטים של מופע Filestore:
המשתמשים מקבלים גם התראות ekm_key_unreachable_detected על כל אחת מהפעולות הבאות אם הן מתבצעות תוך שעה מההתראה הראשונה שדווחה:
- חזרה לגרסה קודמת של קובץ snapshot
- יצירת גיבוי של מכונה
- מחיקת גיבוי
- שחזור מכונה מגיבוי
- עדכון או תיקון של מכונה
רמות נתמכות
בטבלה הבאה מפורטים מסלולי השירות של Filestore שתומכים במפתחות CMEK:
| רמה | תמיכה ב-CMEK |
|---|---|
| HDD בסיסי | לא |
| SSD בסיסי | לא |
| אזורי | כן |
| אזורי | כן |
| Enterprise | כן |
יצירה של אוסף מפתחות ומפתח לשימוש במופע
אוסף המפתחות והמפתח יכולים להיות בפרויקט אחר מזה של מופע Filestore, אבל הם חייבים להיות באותו מיקום. אם כבר יש לכם אוסף מפתחות ומפתח של Cloud KMS שבהם אתם רוצים להשתמש עם Filestore, אתם יכולים לדלג לקטע הבא. אחרת, פועלים לפי ההוראות במאמר יצירה של מפתחות הצפנה סימטריים כדי ליצור אוסף מפתחות ומפתח.
מתן הרשאת גישה למפתח לחשבון השירות של Filestore
כדי ליצור מופע Filestore שמשתמש ב-CMEK, לחשבון השירות של Filestore צריך להיות מוקצה התפקיד Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter).
חשבון שירות של Filestore נוצר בפעם הראשונה שיוצרים מופע של Filestore בפרויקט. אם עדיין אין לכם חשבון שירות Filestore, מריצים את הפקודה הבאה
services identity create:gcloud beta services identity create --service=file.googleapis.com --project=INSTANCE_PROJECT_NUMBER_OR_IDמחליפים את INSTANCE_PROJECT_NUMBER_OR_ID במספר הפרויקט או במזהה הפרויקט שבו רוצים ליצור את מופע Filestore.
מריצים את הפקודה
projects add-iam-policy-bindingכדי להקצות לחשבון השירות של Filestore את התפקיד Cloud KMS CryptoKey Encrypter/Decrypter:gcloud projects add-iam-policy-binding KMS_PROJECT_NUMBER_OR_ID \ --member serviceAccount:service-INSTANCE_PROJECT_NUMBER@cloud-filer.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypterמחליפים את מה שכתוב בשדות הבאים:
- KMS_PROJECT_NUMBER_OR_ID עם מספר הפרויקט או המזהה של הפרויקט שמכיל את מפתח Cloud KMS שבו רוצים להשתמש.
- INSTANCE_PROJECT_NUMBER במספר הפרויקט (ולא במזהה הפרויקט) שבו רוצים ליצור את מופע Filestore.
יצירת אינסטנס שמשתמש במפתח Cloud KMS
מסוף Google Cloud
כדי ליצור אירוע שמשתמש במפתח Cloud KMS להצפנת נתונים:
נכנסים לדף Filestore instances במסוף Google Cloud .
לוחצים על Create Instance.
בוחרים רמת שירות של מופע שתומכת במפתחות CMEK וממלאים את כל שדות החובה והשדות האופציונליים האחרים כמו שאתם עושים בדרך כלל.
לוחצים על הצגת אפשרויות מתקדמות.
מסמנים את תיבת הסימון Use a customer-managed encryption key (CMEK) (שימוש במפתח הצפנה בניהול הלקוח).
בוחרים את מפתח Cloud KMS שרוצים להשתמש בו עבור המופע.
לוחצים על יצירה.
CLI של gcloud
כדי ליצור מופע Filestore שמשתמש במפתח Cloud KMS להצפנת נתונים, צריך לציין את הדגל --kms-key בפקודה filestore instances create:
gcloud filestore instances create nfs-server \
--tier=<var>TIER</var> \
--location=us-central1 \
--file-share=name="vol1",capacity=1TiB \
--network=name="default" \
--kms-key=KMS_KEY
מחליפים את מה שכתוב בשדות הבאים:
- TIER עם רמת שירות של Filestore שתומכת ב-CMEK.
- KMS_KEY עם השם המלא של מפתח Cloud KMS שבו רוצים להשתמש. אפשר גם לציין כל ארגומנט בנפרד בפורמט:
--kms-key=KMS_KEY : --kms-keyring=KEY_RING --kms-location=KMS_REGION --kms-project=KMS_PROJECT_NUMBER_OR_ID
מחליפים את מה שכתוב בשדות הבאים:
- KMS_KEY מחליפים בשם של מפתח Cloud KMS.
- KMS_PROJECT_NUMBER_OR_ID עם מספר הפרויקט או המזהה של הפרויקט שבו נוצר המפתח.
- KMS_KEY_RING בשם של אוסף המפתחות.
- KMS_REGION מחליפים באזור של אוסף המפתחות. אוסף המפתחות והמופע צריכים להיות באותו אזור.
קבלת רשימה של מפתחות
כדי לקבל רשימה של מפתחות, מריצים את הפקודה kms keys list:
gcloud kms keys list \
--project=KMS_PROJECT_NUMBER_OR_ID \
--keyring=KEY_RING \
--location=KMS_REGION
מחליפים את מה שכתוב בשדות הבאים:
- KMS_PROJECT_NUMBER_OR_ID עם מספר הפרויקט או המזהה של הפרויקט שבו נוצר המפתח.
- KEY_RING בשם של אוסף המפתחות.
- KMS_REGION מחליפים באזור של אוסף המפתחות.
בעמודה Name של הפלט מופיע השם המלא של המפתחות הקיימים. לדוגמה:
projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key
אחזור מידע על מפתח של מכונה
בקטעים הבאים מוסבר איך לקבל מידע על מפתח המופע.
הצגת רשימה של מופעים שמשתמשים במפתח Cloud KMS מסוים
כדי להציג רשימה של מופעי Filestore שמשתמשים במפתח מסוים, מריצים את הפקודה instances list:
gcloud filestore instances list --filter="kmsKeyName=KMS_KEY"
מחליפים את KMS_KEY בשם המוגדר במלואו של המפתח שרוצים להשתמש בו.
לדוגמה:
gcloud filestore instances list \
--filter="kmsKeyName=projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key"
הפלט אמור להיראות כך:
INSTANCE_NAME LOCATION TIER CAPACITY_GB FILE_SHARE_NAME IP_ADDRESS STATE CREATE_TIME
nfs-server us-central1 ENTERPRISE 1024 vol1 10.166.108.2 READY 2021-08-12T11:38:56
קבלת מידע על מפתח Cloud KMS של מופע
כדי לקבל מידע על מפתח Cloud KMS עבור מופע Filestore, משתמשים באחת מהשיטות הבאות:
מסוף Google Cloud
עוברים לדף של מופעי Filestore.
לוחצים על מספר המכונה כדי לפתוח את דף הפרטים שלה.
לוחצים על הכרטיסייה סקירה כללית.
אם המופע מצפין נתונים באמצעות מפתח Cloud KMS במקוםGoogle-owned and Google-managed encryption key, שם המפתח מוצג בשדה מפתח הצפנה.
CLI של gcloud
מריצים את הפקודה הבאה instances describe:
gcloud filestore instances describe INSTANCE_ID \
--location=INSTANCE_LOCATION
מחליפים את מה שכתוב בשדות הבאים:
- INSTANCE_ID עם מספר המכונה של מכונת Filestore שרוצים לקבל מידע לגביה.
- INSTANCE_LOCATION עם האזור או התחום שבו נמצאת המכונה.
הפלט אמור להיראות כך:
createTime: '2021-08-12T11:38:56.851157387Z'
fileShares:
- capacityGb: '1024'
name: vol1
kmsKeyName: projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key
labels:
key: val
name: projects/consumer-project/locations/us-central1/instances/nfs-server
networks:
- ipAddresses:
- 10.0.100.2
modes:
- MODE_IPV4
network: network
reservedIpRange: 10.166.108.0/23
state: READY
tier: ENTERPRISE
השבתה או השמדה של מפתח Cloud KMS שמשמש מכונה
אם מזוהה שינוי במצב של מפתח Cloud KMS, המופע מפסיק באופן אוטומטי להציג נתונים. דוגמאות:
הזיהוי הזה בדרך כלל מתבצע תוך כמה דקות אחרי השינוי במצב המפתח, אבל במקרים מסוימים הוא יכול להימשך עד שעה.
אחרי שמפסיקים את המופע, כל הגישה לנתונים של שיתוף הקבצים ולכל תמונות המצב נחסמת. החיוב על מופעים שהופסקו יימשך עד למחיקה שלהם.
הפעלה של מופע שהופסק
אם מופעלת במכונת Filestore מופסקת הצפנת נתונים באמצעות מפתח Cloud KMS, צריך להפעיל או לשחזר את כל גרסאות המפתח לפני שמפעילים מחדש את המכונה.
אחרי שמפעילים את הסטטוס של מפתח Cloud KMS, המופע יזהה באופן אוטומטי שינויים במפתח ויפעיל מחדש בלי לבצע פעולות נוספות, בדרך כלל תוך 20 דקות.
תמיכה ב-CMEK בשרשראות גיבוי
אתם יכולים להשתמש במפתחות CMEK כדי להצפין לא רק את מופעי Filestore אלא גם את שרשראות הגיבוי.
התמיכה ב-CMEK לא זמינה לגיבויים ברמת הבסיס.
שרשראות הגיבוי נמצאות בקטגוריה ובאזור יחידים. כדי לאחסן ולהצפין נתוני גיבוי באזור מחוץ למופע המקור, המשתמשים צריכים להחיל שני מפתחות CMEK נפרדים: אחד למופע ואחד לשרשרת הגיבוי. חלק מהדרישות חלות:
- מפתח CMEK צריך להיות באותו אזור שבו נמצאת שרשרת הגיבוי שהוא מצפין.
- מפתח CMEK יחיד מוחל על הקטגוריה שבה מאוחסנת שרשרת הגיבוי, ואי אפשר לשלב אותו עם מפתח אחר או להחליף אותו.
מגבלות של רוטציית מפתחות
במהלך רוטציית מפתחות, נוצרים מפתחות הצפנה חדשים כדי להחליף את המפתחות הקיימים. הפעולות הבאות שקשורות לרוטציית מפתחות עשויות למנוע מכם לשחזר שרשרת גיבוי:
- השבתה של מפתח או של גרסת מפתח.
- השמדה של מפתח או גרסת מפתח.
- שינוי הרשאות המפתח.
הפעולות האלה לא מונעות את יצירת הגיבויים בשרשרת.
אם לא הצלחתם לשחזר את שרשרת הגיבוי, מבצעים את השלבים הבאים:
- מחיקת כל הגיבויים.
- מתחילים שרשור חדש. אפשר להשתמש באחת מהאפשרויות הבאות:
- יוצרים את הגיבוי במיקום אחר עם אותו מפתח CMEK.
- יוצרים את הגיבוי באותו מיקום עם מפתח CMEK חדש.
מידע נוסף מופיע במאמר סקירה כללית בנושא גיבויים.