אתם יכולים להצפין בצורה מאובטחת את כל הנתונים שמועברים בין אפליקציות הלקוח לבין Memorystore for Redis Cluster. זוהי הצפנה בזמן ההעברה. באמצעות הצפנה בזמן ההעברה, כל התעבורה ב-Redis מוצפנת באמצעות פרוטוקול Transport Layer Security (TLS). כך אפשר לוודא שכל הנתונים שעוברים בין האפליקציות שלכם לבין Memorystore for Redis Cluster יישארו סודיים ולא ייערכו בהם שינויים.
כשמופעלת הצפנה במעבר, לקוחות Redis מתקשרים באופן בלעדי באמצעות חיבור מאובטח. לקוחות Redis שלא מוגדרים ל-TLS נחסמים. אם בוחרים להשתמש בהצפנה במעבר, אתם אחראים לוודא שלקוח Redis יכול להשתמש בפרוטוקול TLS.
הנה כמה תרחישים לדוגמה לשימוש בהצפנה במעבר:
- הגנה על נתונים רגישים במטמון: אם אתם משתמשים ב-Memorystore for Redis Cluster כדי לאחסן מידע בעל ערך גבוה, כמו טוקנים של סשנים, פרטים אישיים מזהים (PII) או מפתחות API, ההצפנה במעבר מונעת מפורצים עם גישה ל-VPC לגשת לנתונים שלכם.
- עמידה בתקנים בתחום: מסגרות אבטחה רבות, כולל HIPAA בתחום הבריאות ו-PCI DSS לנתונים פיננסיים, מחייבות הצפנה של מידע רגיש בזמן שהוא לא פעיל ובזמן ההעברה, למטרות רגולטוריות ולעמידה בתקנים בתחום.
- אימות מאובטח של ניהול זהויות והרשאות גישה (IAM): כשמשתמשים באימות IAM כדי לנהל את הגישה לנתונים, Memorystore for Redis Cluster דורש TLS כדי למנוע חשיפה או דליפה של אסימוני אימות במהלך השידור.
- מניעת מתקפות מסוג 'אדם באמצע': פרוטוקול TLS מאמת את נקודת הקצה של השרת באמצעות רשויות אישורים (CA). רשויות אישורים מגנות על האפליקציה מפני זיוף שרתים ושינוי לא מורשה של נתונים בזמן שהנתונים עוברים בין האפליקציה לבין Memorystore for Redis Cluster.
דרישות מוקדמות להצפנה בזמן העברה
כדי להשתמש בהצפנה במעבר עם Memorystore for Redis Cluster, צריך את הדברים הבאים:
לקוח Redis שתומך ב-TLS או ב-TLS sidecar של צד שלישי.
אישורי CA שמותקנים במכונת הלקוח שמקבלת גישה לאשכול.
התמיכה ב-TLS מובנה הייתה זמינה רק ב-Redis, בגרסאות 6.0 ואילך. כתוצאה מכך, לא כל ספריית לקוח של Redis תומכת ב-TLS. אם אתם משתמשים בלקוח שלא תומך ב-TLS, מומלץ להשתמש בתוסף של צד שלישי שמפעיל TLS בלקוח. אפשר לראות דוגמה לחיבור לאשכול ב-Memorystore for Redis Cluster שבו מופעלת הצפנה במעבר.
רשויות אישורים (CA)
בצביר שמשתמש בהצפנה במעבר יש רשויות אישורים (CA) שמאמתות את האישורים של המכונות בצביר. ב-Memorystore for Redis Cluster אפשר לבחור מצב CA של שרת. מצב ה-CA קובע באיזו היררכיית CA נעשה שימוש להנפקת האישורים הדיגיטליים עבור אשכול.
Memorystore for Redis Cluster מציע את מצבי ה-CA הבאים:
- CA לכל מכונה: ב-Memorystore for Redis Cluster, כל אשכול מקבל תשתית CA ייחודית משלו. כדי לגשת לאשכול בצורה מאובטחת, צריך להגדיר את הלקוחות כך שיסמכו על היררכיית ה-CA הזו. התהליך הזה כולל הורדה והתקנה של אישורי CA בכל לקוח שניגש לאשכול.
- CA משותף: תשתית CA מנוהלת ואזורית. לכל אזור, אפשר להוריד חבילת אישורים אחת של רשות אישורים. החבילה הזו תקפה לכל האשכולות שנמצאים באזור שהגדרתם לשימוש ב-CA המשותף. שימוש ברשות אישורים משותפת מצמצם את מספר האישורים שהלקוחות צריכים לנהל.
- רשות אישורים בניהול הלקוח: שימוש במאגר רשויות אישורים משלכם שמארח Certificate Authority Service. אם אפליקציות הלקוח שלכם מוגדרות כך שהן נותנות אמון ב-CA הזה, האפליקציות יכולות להתחבר לאשכול בלי שתצטרכו להוריד ולהתקין אישורי CA נוספים. כך תוכלו לשלוט יותר בנתונים ולעמוד בדרישות התאימות.
רוטציה של אישורי שרת
בכל שבוע, שירות Memorystore for Redis Cluster מבצע רוטציה של אישורים בצד השרת עבור אשכולות שמשתמשים במצבים של CA לכל מופע, CA משותף ו-CA בניהול הלקוח. אישורי שרת חדשים חלים רק על חיבורים חדשים, וחיבורים קיימים נשארים פעילים במהלך הרוטציה הזו.
בנוסף לרוטציה השבועית של האישורים בצד השרת ב-Memorystore for Redis Cluster, במצב CA בניהול הלקוח אפשר לבצע רוטציה של האישורים לפי דרישה.
השפעה על הביצועים של הפעלת הצפנה בזמן ההעברה
תכונת ההצפנה בזמן ההעברה מצפינה ומפענחת נתונים, ולכן יש עלויות עיבוד נוספות. כתוצאה מכך, הפעלת הצפנה במהלך ההעברה עשויה להפחית את הביצועים של הלקוחות שלכם. בנוסף, כשמשתמשים בהצפנה בזמן העברה, כל חיבור נוסף כרוך בעלות משאב משויכת.
כדי לקבוע את זמן האחזור שקשור לשימוש בהצפנה בזמן העברה, משווים את הביצועים של הלקוחות. לשם כך, משווים את הביצועים של אשכול שמופעלת בו הצפנה בזמן העברה לאשכול שבו ההצפנה הזו מושבתת.
הנחיות לשיפור הביצועים
כדי לשפר את הביצועים של אשכול, מומלץ לפעול לפי ההנחיות הבאות:
אם אפשר, כדאי להקטין את מספר החיבורים של הלקוחות. במקום ליצור חיבורים קצרים לפי דרישה, כדאי ליצור חיבורים ארוכים ולעשות בהם שימוש חוזר.
להגדיל את הגודל של האשכול.
להגדיל את משאבי ה-CPU של המכונה המארחת של הלקוח. מכונות לקוח עם מספר ליבות CPU גבוה יותר יניבו ביצועים טובים יותר. אם אתם משתמשים במכונה וירטואלית ב-Compute Engine, מומלץ להשתמש באשכולות שעברו אופטימיזציה.
צריך להקטין את גודל המטען הייעודי (payload) שמשויך לתנועה של הלקוח. מטען ייעודי גדול יותר דורש יותר הלוך ושוב.