כדי להפעיל הצפנת נתונים שקופה (TDE), צריך לספק את משתני הסביבה הנדרשים של הכספת ולכלול את הדגל --tde-kek-url בתוך POSTGRES_INITDB_ARGS.
לפני שמתחילים
- מגדירים את מנוע הסודות KV-V2 של HashiCorp Vault כדי לוודא שהנתיב של מפתח ההצפנה (KEK) ושל אסימון האינטרנט מסוג JSON (JWT) זמינים.
- מוודאים של-AlloyDB Omni יש הרשאה לקרוא את קובץ אסימון ה-JWT.
יצירת האשכול
כדי ליצור אשכול עם TDE, צריך להעביר את הגדרות Key Management Service (KMS) הנדרשות ואת פרטי הכניסה לאימות במהלך האיניציאליזציה של מסד הנתונים. סוג האימות הנתמך היחיד הוא jwt.
בוחרים את הכרטיסייה של סביבת זמן הריצה של הקונטיינר.
Docker
docker run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Docker
docker run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Podman
podman run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Podman
podman run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
מחליפים את מה שכתוב בשדות הבאים:
-
CONTAINER_NAME: שם הקונטיינר שרוצים ליצור. לדוגמה,alloydb-tde. -
DATA_DIR: הספרייה המקומית שרוצים לטעון כנפח הנתונים של AlloyDB Omni. לדוגמה,/local/data. -
VAULT_AUTH_TYPE: סוג האימות שבו משתמשים לחיבור לכספת. יש תמיכה רק ב-jwt. -
JWT_AUTH_ENGINE_MOUNT: הנתיב שבו מותקן מנוע האימות של HashiCorp Vault. לדוגמה,/auth/jwt. -
JWT_FILE_PATH: הנתיב שבו שמור ה-JWT של Vault בצמתים. לדוגמה,tde-tls/jwt-token. - (אופציונלי)
VAULT_ROLE: תפקיד הלקוח שמוגדר בהגדרת הכספת, שמאפשר ל-HashiCorp Vault לאמת את האותנטיות של אסימון ה-JWT. -
VAULT_CERT_PATH_ON_DISK: הנתיב לאישורי Vault במחשב המארח. לדוגמה,/local/vault/config. -
VAULT_CERT_PATH: הנתיב שבו נמצאים במאגר האישורים לחיבור לכספת. לדוגמה,/tde-tls. אם המדיניות לא מוגדרת, המערכת תשתמש באישורים שמוגדרים כברירת מחדל במאגר האישורים. KEK_URL: כתובת ה-URL המלאה של ה-KEK ב-HashiCorp Vault. כדי לציין את HashiCorp Vault כספק ה-KMS, משתמשים ב-vaultכפרוטוקול, לדוגמהvault://127.0.0.1:8200/v1/secrets/data/alloydb_kek.-
IMAGE_TAG: משתמשים ב-18.1.0בשביל קובץ האימג' העדכני של Debian או ב-18.1.0-ubiבשביל קובץ האימג' העדכני של UBI.
צפייה במדדי TDE
אחרי שהאשכול מאותחל, מבצעים את השלבים הבאים כדי לוודא ש-TDE מופעל ולראות את המדדים שקשורים ל-TDE.
- מתחברים למסד הנתונים באמצעות
psqlאו הלקוח המועדף. הוראות מפורטות להפעלה של המכונות ולהתחברות אליהן זמינות במאמר הפעלה של AlloyDB Omni והתחברות אליו. מריצים את הפקודה הבאה:
select * FROM pgsnap.g$tde_stats;אם TDE מופעל בהצלחה, הפלט מציג מדדי TDE כמו אם TDE מופעל, כתובת ה-URL של KEK, גרסת KEK וחותמת הזמן של יצירת KEK.
בטבלה הבאה מוסבר מה המשמעות של כל מדד.
שם תיאור תווית יחידה סוג alloydb_omni_database_tde_data_blocks_decrypted_count_totalמספר בלוקי הנתונים שפוענחו. לא רלוונטי מונה alloydb_omni_database_tde_data_blocks_encrypted_count_totalמספר בלוקי הנתונים המוצפנים. לא רלוונטי דלפק alloydb_omni_database_tde_data_decryption_time_us_totalמשך הזמן הכולל שנדרש לפענוח של בלוק הנתונים. לא רלוונטי מיקרו-שניות דלפק alloydb_omni_database_tde_data_encryption_time_us_totalהזמן הכולל שהושקע בהצפנה של בלוק נתונים. לא רלוונטי מיקרו-שניות דלפק alloydb_omni_database_tde_enabledסטטוס ההפעלה של TDE. לא רלוונטי תחנה הידרומטרית alloydb_omni_database_tde_kek_infoמידע על KEK של TDE. -
kek_version: הגרסה של ה-KEK
שמשמשת לאריזת המפתחות. -
kek_url: נתיב מוגדר במלואו
ל-KEK ב-KMS -
kek_creation_timestamp:
זמן היצירה של גרסת ה-KEK שבשימוש.
מד alloydb_omni_database_tde_temp_blocks_decrypted_count_totalמספר הבלוקים הזמניים שפוענחו. לא רלוונטי דלפק alloydb_omni_database_tde_temp_blocks_encrypted_count_totalמספר הבלוקים הזמניים שהוצפנו. לא רלוונטי מונה alloydb_omni_database_tde_temp_decryption_time_us_totalהזמן הכולל שנדרש לפענוח חסימה זמנית. לא רלוונטי מיקרו-שניות דלפק alloydb_omni_database_tde_temp_encryption_time_us_totalהזמן הכולל שהוקדש להצפנת בלוקים זמנית. לא רלוונטי מיקרו-שניות דלפק alloydb_omni_database_tde_wal_blocks_decrypted_count_totalמספר בלוקי ה-WAL שפוענחו. לא רלוונטי מונה alloydb_omni_database_tde_wal_blocks_encrypted_count_totalמספר בלוקי ה-WAL שהוצפנו. לא רלוונטי מונה alloydb_omni_database_tde_wal_decryption_time_us_totalהזמן הכולל שחלף בפענוח של בלוק WAL. לא רלוונטי מיקרו-שניות מונה alloydb_omni_database_tde_wal_encryption_time_us_totalמשך הזמן הכולל של הצפנת בלוקים של WAL. לא רלוונטי מיקרו-שניות מונה -