כדי לאבטח את הנתונים במנוחה ולהגן על מידע רגיש, אתם יכולים להפעיל הצפנת נתונים שקופה (TDE) ב-AlloyDB Omni. במאמר הזה מוסבר איך ליצור אשכול עם TDE, על ידי ציון משתני הסביבה הנדרשים של Vault והדגל --tde-kek-url במשתנה הסביבה POSTGRES_INITDB_ARGS במהלך האתחול של מסד הנתונים.
לפני שמתחילים
- מגדירים את מנוע הסודות KV-V2 של HashiCorp Vault כדי לוודא שהנתיב של מפתח הצפנת המפתחות (KEK) ואסימון האינטרנט מסוג JSON (JWT) זמינים.
- מוודאים של-AlloyDB Omni יש הרשאה לקרוא את קובץ ה-JSON Web Token (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: הנתיב שבו נמצאים האישורים לחיבור ל-Vault בקונטיינר. לדוגמה,/tde-tls. אם המדיניות לא מוגדרת, המערכת תשתמש באישורים שמוגדרים כברירת מחדל במאגר האישורים. -
KEK_URL: כתובת ה-URL המלאה של KEK ב-HashiCorp Vault. משתמשים ב-vaultכפרוטוקול כדי לציין את HashiCorp Vault כספק KMS – לדוגמה,vault://127.0.0.1:8200/v1/secrets/data/alloydb_kek. -
IMAGE_TAG: משתמשים ב-18.3.0בשביל קובץ האימג' העדכני של Debian או ב-18.3.0-ubiבשביל קובץ האימג' העדכני של UBI.
כדי להפעיל TDE לנתוני מטמון של מנוע מבוסס-עמודות שמועברים לאחסון SSD, מתחברים למכונה של מסד הנתונים ומריצים את השאילתה הבאה:
ALTER SYSTEM SET google_columnar_engine.enable_tde_for_storage_cache = 'on';
מפעילים מחדש את שרת מסד הנתונים כדי שהשינויים ייכנסו לתוקף.
הפניות למדדי TDE
אפשר לראות את כל מדדי ה-TDE בסוכן המעקב של AlloyDB Omni. בטבלה הבאה מתואר כל מדד.
| שם | תיאור | תווית | יחידה | סוג |
|---|---|---|---|---|
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 |
מידע על TDE 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. | לא רלוונטי | מיקרו-שניות | מונה |
tde_chill_cache_blocks_encrypted |
מספר הבלוקים במטמון המצב הקריר שמוצפנים. | לא רלוונטי | מונה | |
tde_chill_cache_blocks_decrypted |
מספר הבלוקים של המטמון שפוענחו. | לא רלוונטי | מונה | |
tde_chill_cache_blocks_total_encryption_time_us |
משך הזמן הכולל של הצפנת בלוקים במטמון של Chill. | לא רלוונטי | מיקרו-שניות | מונה |
tde_chill_cache_blocks_total_decryption_time_us |
הזמן הכולל שהושקע בפענוח של בלוק המטמון של Chill. | לא רלוונטי | מיקרו-שניות | דלפק |
tde_ce_cache_ssd_blocks_encrypted |
מספר הבלוקים של המטמון הטורי שהועברו לאחסון SSD והוצפנו. | לא רלוונטי | מונה | |
tde_ce_cache_ssd_blocks_decrypted |
מספר הבלוקים של המטמון הטורי שזלגו לאחסון SSD ופוענחו. | לא רלוונטי | דלפק | |
tde_ce_cache_ssd_blocks_total_encryption_time_us |
משך הזמן הכולל שהוקדש להצפנת בלוקים של מטמון טורי שהועברו לאחסון SSD. | לא רלוונטי | מיקרו-שניות | דלפק |
tde_ce_cache_ssd_blocks_total_decryption_time_us |
משך הזמן הכולל שנדרש לפענוח בלוקים של מטמון טורי שהועברו לאחסון SSD. | לא רלוונטי | מיקרו-שניות | מונה |