הצפנת נתונים שקופה ב-AlloyDB Omni

בוחרים גרסה של מאמרי העזרה:

הצפנת נתונים שקופה (TDE) מאפשרת לאבטח את כל הנתונים במצב מנוחה באשכולות AlloyDB Omni בלי לשנות את קוד האפליקציה. כשמפעילים את התכונה הזו, הטבלאות, האינדקסים ויומני הכתיבה מראש (WAL) מוצפנים באופן אוטומטי לפני שהם נכתבים בדיסק. כך תוכלו לעמוד בדרישות התאימות ולהגן על מידע רגיש.

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

היררכיית מפתחות

ב-AlloyDB Omni יש היררכיית מפתחות דו-שכבתית ששומרת על הפרדת תפקידים קפדנית בין מסד הנתונים לבין תשתית האבטחה שמנוהלת על ידי המשתמש.

  • מפתחות להצפנת נתונים (DEK): נוצרים על ידי AlloyDB Omni ונמצאים בבעלותו. המפתחות האלה מצפינים את קובצי הנתונים בפועל, את ה-WAL ואת הקבצים הזמניים. מפתחות ה-DEK מאוחסנים בדיסק של AlloyDB Omni, אבל הם עטופים במפתח ה-KEK שלכם.
  • מפתח להצפנת מפתחות הצפנה (KEK): המפתח הראשי שמנהלים בשירות ניהול מפתחות (KMS) חיצוני. ‫AlloyDB Omni משתמש ב-KEK כדי להצפין את ה-DEK. ‫AlloyDB Omni ניגש למפתח הזה רק בזמן ההפעלה כדי לפתוח את ה-DEK. מפתח ה-KEK אף פעם לא נשמר באופן קבוע בדיסק של מסד הנתונים.

איך TDE פועל עם AlloyDB Omni

כשמפעילים את TDE, ‏ AlloyDB Omni מאבטח את הנתונים באמצעות מודל הצפנה שכבתי שמשתלב עם KMS חיצוני.

  • אתחול ואחזור מפתחות: במהלך שלב ההפעלה או האתחול של האשכול, מנוע AlloyDB Omni יוצר חיבור מאובטח ל-KMS. הוא מאמת באמצעות אסימון אינטרנט מסוג JSON ‏ (JWT) ומאחזר את ה-KEK.
  • ביטול האריזה של מפתחות ה-DEK: ‏AlloyDB Omni משתמש במפתח ה-KEK כדי לבטל את האריזה של מפתחות ה-DEK, שמאוחסנים באחסון המקומי במצב ארוז. לאחר מכן, מפתחות ה-DEK האלה נטענים לזיכרון.
  • פעולות שקופות על נתונים:
    • כתיבה לדיסק: כשמסד הנתונים כותב בלוקים של נתונים, רשומות WAL או קבצים זמניים לדיסק הפיזי, הוא מצפין את הנתונים באופן אוטומטי באמצעות אלגוריתמים של AES-256 לפני הכתיבה לדיסק הפיזי.
    • קריאה מהדיסק: כשהמסד צריך לקרוא נתונים לזיכרון, הוא מפענח באופן אוטומטי את הבלוקים באמצעות מפתחות ה-DEK ששמורים בזיכרון.
  • גבולות אבטחה: מפתח ה-KEK אף פעם לא מאוחסן בדיסק של מסד הנתונים המקומי, כך שגם אם מדיה פיזית לאחסון נחשפת, הנתונים נשארים בלתי קריאים בלי גישה מורשית לכספת החיצונית.

היקף ההצפנה והמפרט שלה

‫AlloyDB Omni משתמש באלגוריתמים של AES-256, שהם הסטנדרט בתחום, כדי לאבטח את הנתונים.

  • קובצי נתונים (טבלאות ואינדקסים): AES-256-XTS.
  • יומני כתיבה מראש (WAL): AES-256-CTR.
  • קבצים זמניים: AES-256-XTS או AES-256-CTR, בהתאם לסוג הנתונים הזמניים.
  • thought עטיפת מפתחות: AES-256-KWP.

גיבוי וזמינות גבוהה

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

מערכות KMS ואימות נתמכות

‫AlloyDB Omni תומך ב-HashiCorp Vault כספק KMS חיצוני. ‫AlloyDB Omni תומך רק במנוע הסודות KV-V2, ושיטת האימות היחידה שנתמכת היא JWT.

הערה: AlloyDB Omni תומך ב-KMS מבוסס-קבצים. עם זאת, מומלץ להשתמש בזה רק למטרות בדיקה, ולא בעומסי עבודה בסביבת הייצור.

תאימות לכלי PostgreSQL

אשכולות שמופעל בהם TDE תומכים בכל הכלים המובנים של PostgreSQL, חוץ מ-initdb, באופן שקוף באמצעות משתני סביבה. אם אתם משתמשים ב-initdb, ודאו שאתם מעבירים את כתובת ה-URL של ה-KEK. מידע נוסף זמין במאמר יצירת אשכול עם TDE.

מגבלות

  • אי אפשר להפעיל TDE באשכולות קיימים.
  • אחרי שמפעילים את TDE, אי אפשר להשבית אותו.
  • אי אפשר לשדרג גרסאות ראשיות באשכולות שמופעל בהם TDE.
  • אי אפשר לשחזר גיבויים מוצפנים לשרתים לא מוצפנים, או גיבויים לא מוצפנים לשרתים מוצפנים.
  • אין תמיכה ברוטציה של DEK.
  • יש תמיכה ברוטציה של KEK כל עוד נתיב כתובת ה-URL של ה-KEK לא משתנה.
  • אפשר להחליף את ה-KEK רק אם ספק ה-KMS החיצוני הוא HashiCorp Vault.
  • אי אפשר CREATE DATABASE באמצעות השיטה FILE_COPY.
  • באשכולות שבהם מופעל TDE, גיבויי Barman תומכים רק במצב rsync. שיטת הגיבוי postgres לא נתמכת.

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