ההצפנה שקופה כי שאילתות SQL, DDL ופעולות DML פועלות כרגיל בלי שנדרשים שינויים באפליקציה. הנתונים מוצפנים באופן אוטומטי לפני שהם נכתבים בדיסק, ומפוענחים כשהם נקראים לזיכרון.
היררכיית מפתחות
ב-AlloyDB Omni מיושמת היררכיית מפתחות דו-שכבתית ששומרת על הפרדת תפקידים ברורה בין מסד הנתונים לבין תשתית האבטחה בניהול המשתמש.
- מפתחות להצפנת נתונים (DEK): נוצרים ונמצאים בבעלות של AlloyDB Omni. המפתחות האלה מצפינים את קובצי הנתונים בפועל, את קובצי ה-WAL ואת הקבצים הזמניים. מפתחות ה-DEK מאוחסנים ב-AlloyDB Omni בדיסק, אבל הם עטופים במפתח ה-KEK שלכם.
-
מפתח להצפנת מפתחות (KEK): המפתח הראשי שמנוהל בשירות חיצוני לניהול מפתחות (KMS).
AlloyDB Omni משתמש במפתח ה-KEK שלכם כדי להצפין את מפתחות ה-DEK.
AlloyDB Omni ניגש למפתח הזה רק בהפעלה כדי לפתוח את ה-DEK. מפתח ה-KEK שלכם אף פעם לא מאוחסן באופן קבוע בדיסק של מסד הנתונים.
-
המיקום של KEK ופרמטרים של גישה מסופקים באמצעות משתני סביבה ודגל האתחול
--tde-kek-url.
-
המיקום של 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 בהתאם לסוג הנתונים הזמניים.
- עטיפת מפתח: AES-256-KWP.
גיבוי וזמינות גבוהה
כשמפעילים TDE, הגיבויים שנוצרים באמצעות pgBackRest מקבלים בירושה את הגדרת ההצפנה של אשכול המקור. כך נתוני הגיבוי נשארים מוגנים באותה רמת אבטחה כמו מסד הנתונים הראשי.
במערכי HA, צריך לאתחל את סביבת השחזור עם אותם משתני סביבה של הכספת. משתני הסביבה של הכספת צריכים להיות זמינים בכל המארחים המשתתפים.
מערכות KMS ואימות נתמכות
AlloyDB Omni תומך ב-HashiCorp Vault כספק KMS חיצוני. AlloyDB Omni תומך רק במנוע הסודות KV-V2, ושיטת האימות הנתמכת היחידה היא JWT.
תאימות לכלי PostgreSQL
אשכולות עם TDE תומכים בכל הכלים המובנים של PostgreSQL, מלבדinitdb, באופן שקוף באמצעות משתני סביבה.
אם אתם משתמשים ב-initdb, אתם צריכים להעביר את כתובת ה-URL של KEK באופן מפורש.
מידע נוסף זמין במאמר בנושא יצירת אשכול עם TDE.
מגבלות
- אי אפשר להפעיל TDE באשכולות קיימים.
- אחרי שמפעילים את TDE, אי אפשר להשבית אותו.
- שדרוגים של גרסאות ראשיות לא נתמכים באשכולות שמופעלת בהם הצפנה שקופה של נתונים (TDE).
- אי אפשר לשחזר גיבויים מוצפנים לשרתים לא מוצפנים, או גיבויים לא מוצפנים לשרתים מוצפנים.
- אין תמיכה ברוטציה של מפתח ה-DEK.
- יש תמיכה ברוטציה של KEK כל עוד נתיב כתובת ה-URL של ה-KEK נשאר זהה.
- אי אפשר
CREATE DATABASEבאמצעות שיטת הבידינגFILE_COPY. - באשכולות שמופעל בהם TDE, הגיבויים של Barman תומכים רק במצב
rsync. שיטת הגיבויpostgresלא נתמכת.