בדף הזה מוסבר איך להשתמש ב-CMEK עם Apigee. למידע נוסף, קראו את השיטות המומלצות לשימוש ב-CMEK ב-Apigee.
סקירה כללית
כברירת מחדל, Google Cloud מצפין באופן אוטומטי נתונים במצב מנוחה באמצעות מפתחות הצפנה שבבעלות Google ובניהולה. אם יש לכם דרישות תאימות או דרישות רגולטוריות ספציפיות שקשורות למפתחות שמגנים על הנתונים שלכם, אתם יכולים להשתמש במפתחות הצפנה בניהול הלקוח (CMEK).
במאמר שימוש ב-CMEK עם Apigee תוכלו לקרוא מידע נוסף על השימוש ב-CMEK ב-Apigee. מידע נוסף על CMEK באופן כללי, כולל מתי ולמה להפעיל אותו, זמין במסמכי התיעוד של Cloud Key Management Service.
שימוש במפתחות הצפנה בניהול הלקוח (CMEK) לא בהכרח מספק אבטחה טובה יותר ממנגנוני ההצפנה שמוגדרים כברירת מחדל ב-Google, אבל הוא מאפשר לכם לשלוט בהיבטים נוספים של מחזור החיים וניהול המפתחות, כדי לעמוד בדרישות האבטחה והתאימות.
אם אתם צריכים יותר שליטה בפעולות של מפתחות, מעבר למה ש שבבעלות ובניהול של Google מאפשרים, אתם יכולים להשתמש במפתחות הצפנה בניהול הלקוח. אפשר ליצור ולנהל את המפתחות האלה באמצעות Cloud Key Management Service (Cloud KMS), ולאחסן אותם כמפתחות תוכנה באשכול HSM, או באופן חיצוני.
התכונות לניהול מפתחות מסופקות על ידי שירות Cloud KMS.
תרחישים לדוגמה של CMEK
בקטע הזה מתוארים תרחישים נפוצים לשימוש ב-CMEK עם Apigee.
רוטציית מפתחות
להחליף את המפתח באופן אוטומטי או ידני. חשוב לזכור שכאשר המפתח עובר רוטציה, הנתונים שכבר מאוחסנים ב-Apigee לא מוצפנים מחדש באופן אוטומטי באמצעות גרסת המפתח החדשה, אבל הם ימשיכו להיות נגישים כל עוד גרסת המפתח הקודמת ששימשה להצפנת הנתונים לא מושבתת או מושמדת.
המטרה העיקרית של רוטציית מפתחות היא להגביל את חשיפת הנתונים למפתח אחד, ולא להחליף לגמרי את גרסת המפתח הישנה.
בשלב הזה, Apigee לא תומכת בהצפנה מחדש במהלך רוטציית מפתחות.
ב-Apigee, כשמחליפים מפתח, רק כמות מוגבלת של נתונים חדשים (לדוגמה, גרסה חדשה של שרת proxy) תוצפן באמצעות גרסת המפתח הראשי החדשה. רוב הנתונים, כמו נתוני ניתוח, דיסק של זמן ריצה וגרסה ישנה של שרת proxy, עדיין משתמשים בגרסת המפתח הישנה.
כדי להיפטר לחלוטין מהגרסה הקודמת של המפתח, צריך ליצור מחדש את הארגון ב-apigee. במפתחות הצפנה של סביבת זמן ריצה, אם רוצים להיפטר לחלוטין מהגרסה הקודמת של המפתח, צריך ליצור מחדש את המכונות של סביבת זמן הריצה. למידע נוסף, קראו את
השיטות המומלצות ל-CMEK ב-Apigee.
מחיקה והשבתה של מפתחות
כשגרסת מפתח מושבתת, אי אפשר לגשת לנתוני Apigee שמוצפנים באמצעות גרסת המפתח הזו. כדי לשחזר את הגישה לנתונים, אפשר להפעיל מחדש את המפתח.
כשמוחקים או משביתים את מפתח ה-CMEK, אפילו רק בגרסאות קודמות, הארגון ב-apigee יתחיל לפעול בצורה לא תקינה, בהתאם לגרסת המפתח שמשמשת להצפנה. ממשקי API מסוימים יפסיקו לפעול באופן מיידי כי הם דורשים מפתח CMEK כדי לבצע פענוח נתונים, ופונקציות מסוימות יתחילו לפעול באופן שגוי רק כשפעולה מסוימת של המערכת תופעל, כמו טעינה מחדש של דיסקי אחסון מתמידים (persistent disk) של Compute Engine. מידע נוסף זמין במאמר
השבתת מפתחות.
כשמשמידים גרסת מפתח, כל נתוני Apigee שמוצפנים באמצעות גרסת המפתח הזו הופכים לבלתי קריאים ואי אפשר לשחזר אותם. הפעולה הזו סופית ואי אפשר לבטל אותה.
מידע נוסף:
שחזור מפתחות
אם מחקתם או השבתתם בטעות מפתח או גרסה קודמת של מפתח, נסו לשחזר אותם בהקדם האפשרי.
חשוב לזכור שהתכונה CMEK נועדה למנוע אובדן נתונים אם המפתח לא זמין.
אחרי שמשחזרים את המפתח, לא בטוח שהארגון ב-apigee ישוחזר, ויכול להיות שנתונים יאבדו. פרטים נוספים זמינים במאמר
הפעלה מחדש של מפתח.
פנו אל Google Cloud Customer Care כדי לברר מה השלב הבא הכי מתאים.
ביטול הגישה למפתח
אם תבטלו את הגישה של סוכן השירות של Apigee למפתח באמצעות IAM, ל-Apigee לא תהיה גישה לנתונים במישור הבקרה שמוצפנים באמצעות גרסה כלשהי של המפתח. פעולות של Apigee API שתלויות בפענוח הנתונים ייכשלו. כדי לשחזר את הגישה לנתונים, צריך לתת מחדש גישה למפתח ולפעולות של Apigee API שמפענחות את הנתונים.
איך מנהלים את הגישה לפרויקטים, לתיקיות ולארגונים
EKM
Apigee תומך ב- Cloud External Key Manager (Cloud EKM) ל-CMEK. בעזרת התמיכה ב-EKM, אתם יכולים לעקוב אחרי התקינות של ה-EKM ולהגדיר התראות על בעיות שקשורות ל-EKM. מידע נוסף זמין במאמר מעקב אחרי התקינות של EKM.
מעקב אחר מפתחות
ב-Apigee אפשר לעקוב אחרי השימוש במפתחות. בכרטיסייה Usage tracking של מפתח ב-Cloud Key Management Service מופיעים המשאבים של Apigee שהמפתח מגן עליהם, לפי סוגי המשאבים הבאים:
-
apigee.googleapis.com/Organization, שכולל את מפתח ההצפנה של מישור הבקרה, את מפתח ההצפנה של נתוני הצרכן של ה-API ואת מפתח ההצפנה של מסד הנתונים של זמן הריצה. -
apigee.googleapis.com/Instance, שכולל את מפתח ההצפנה של הדיסק.
תיאורים של המפתחות האלה מופיעים במאמר מידע על מפתחות ההצפנה של Apigee.
מכסות
שימוש במפתחות CMEK יכול להשפיע על השימוש במכסות מסוימות של Cloud KMS. למידע העדכני ביותר על המכסות של Cloud KMS, קראו את המאמר מכסות.
ביטול מפתח ההצפנה
אם אתם חושבים שהנתונים שלכם ב-Apigee ב- Google Cloud נחשפו, אתם יכולים לבטל את מפתחות ההצפנה. לבטל את ה-CMEK של סביבת זמן הריצה כדי לגרום לתקלה במכונה של סביבת זמן הריצה, כך שלא תהיה לה גישה לנתוני השער. מבטלים את ה-CMEK של מישור הבקרה כדי ש-Apigee לא יוכל לבצע ניתוח נתונים או לפרוס שרתי proxy חדשים.
שימוש ב-CMEK עם Apigee
מפתחות ההצפנה של Apigee משמשים לנתונים של מישור הבקרה ושל זמן הריצה, והם נוצרים במהלך תהליך ההקצאה.
הנתונים של מישור הבקרה של Apigee מוצפנים באמצעות מפתח הצפנה שונה מזה של נתוני זמן הריצה, ויכול להיות שהם יאוחסנו באזורים שונים. כפי שמוסבר במסמכי התיעוד של CMEK, ההצפנה הזו חלה רק על נתונים במנוחה, כלומר נתונים שמאוחסנים בסופו של דבר בדיסק.
נתוני מישור הבקרה של Apigee כוללים הגדרות של שרתי proxy (חבילות), חלק מנתוני ההגדרות של הסביבה ונתוני ניתוח. נתוני זמן הריצה של Apigee כוללים נתוני אפליקציות כמו KVM, מטמון וסודות לקוח, שמאוחסנים במסד הנתונים של זמן הריצה.
במאמר מידע על מפתחות ההצפנה של Apigee מפורטים סוגי מפתחות ההצפנה.
אפשר להוסיף מפתחות הצפנה רק כשיוצרים את הארגון ב-Apigee. אחרי שמקצים מפתח CMEK, אי אפשר להחליף אותו במפתח אחר.
אזורי CMEK במישור הבקרה של מיקום אחסון הנתונים
במישור הבקרה האזורי של Apigee, בוחרים שני מפתחות הצפנה למישור הבקרה. הסיבה לכך היא שחלק מהרכיבים שמתחת למישור הבקרה של Apigee תמיד נמצאים באזור אחד במיקום של מישור הבקרה. מידע נוסף זמין במאמר אזורים של מיקום אחסון הנתונים.
| פרטים | מפתחות חובה |
|---|---|
|
אזור מישור הבקרה הוא המקום שבו פועל מישור הבקרה. מישור הבקרה ב-Apigee הוא מושג מופשט שבו כמה רכיבים בסיסיים יוצרים יחד את מישור הבקרה של Apigee. הנתונים של מישור הבקרה הם הגדרות שרת ה-proxy ואחסון ניתוח הנתונים. נתונים אחרים של מישור הבקרה (למשל, עיבוד ניתוח נתונים, פורטלים) נמצאים באזור משנה של מישור הבקרה. כל הרכיבים של אזור המשנה יהיו באותו אזור. |
מפתח אחד לנתונים של מישור הבקרה. מפתח אחד לנתונים של אזור המשנה של מישור הבקרה. |
מגבלות שקשורות למדיניות הארגון
אם יש לכם אילוצים של מדיניות הארגון לגבי CMEK בפרויקט ב- Google Cloud, Apigee תאכוף את התאימות לאילוצים האלה. אם אתם משתמשים ב-Apigee דרך ממשק המשתמש של Google Cloud , דרך ה-CLI או ישירות דרך ממשקי ה-API של Apigee, אכיפת כללי המדיניות של CMEK מובטחת. כשמשתמשים ב Google Cloud ממשק המשתמש של Apigee, אילוצי מדיניות הארגון של CMEK עוברים אימות מראש, כדי שממשק המשתמש יוכל להנחות אתכם לבחור הגדרת תאימות תקינה.
אפשר ליצור אילוצים של מדיניות הארגון לגבי CMEK כדי לדרוש:
- תמיד משתמשים במפתחות הצפנה בניהול הלקוח
- מפתחות הצפנה בניהול הלקוח מותרים רק מפרויקטים ספציפיים שצוינו ברשימת היתרים
לא כל התכונות ב-Apigee תואמות כרגע ל-CMEK. כדי לוודא שבפרויקטים שדורשים CMEK לא נעשה שימוש לא מודע בתכונות שלא מוגנות על ידי CMEK, התכונות האלה יושבתו בפרויקטים שמוגבלים ל-CMEK עד שהם יעמדו בדרישות. רק שימושים חדשים בתכונות יושבתו (יצירת משאבים חדשים או הפעלת תוסף). תכונות ומשאבים שכבר נמצאים בשימוש יישארו זמינים וניתנים לעריכה, אבל לא יהיו תואמים ל-CMEK. התכונות הבאות יושבתו:
-
Apigee Shadow API Discovery לא כפוף למדיניות הארגון לגבי CMEK ולא תואם ל-CMEK.
- יצירת ארגונים להערכה תיחסם גם על ידי ה-API של CreateOrganization להערכת ארגונים וגם על ידי אשף הקצאת ההרשאות להערכה.
-
Gemini Code Assist לא זמין.
- יצירת ארגונים גלובליים תיחסם על ידי ה-API של הארגון להערכה CreateOrganization ואשף הקצאת ההרשאות להערכה.
- אי אפשר לאכוף יצירת מכונות היברידיות.
- הלחצן Data Studio, שמשמש לפתיחת Data Studio עם נתונים מ-Apigee, יושבת כשנדרש CMEK.
- אכיפה רטרואקטיבית של תאימות למשאבים קיימים לא זמינה. אם אתם צריכים שמשאב קיים יהיה תואם, תצטרכו למחוק וליצור אותו מחדש.
למידע נוסף על שימוש באילוצים של מדיניות הארגון ב-Apigee, ראו שימוש באילוצים של מדיניות הארגון ב-Apigee.
איך יוצרים מפתחות הצפנה
כברירת מחדל, Google מנהלת את היצירה של מפתחות ההצפנה במהלך תהליך ההקצאה, אבל אתם יכולים ליצור אותם בעצמכם. מידע נוסף מופיע במאמר מידע על מפתחות ההצפנה של Apigee.
סיכונים ומיטיגציות
בקטע הזה מתוארים איומים פוטנציאליים ופעולות שאפשר לבצע.
- סיכונים:
- חשיפת מפתח: מתרחשת כשגורם תוקף מקבל גישה למפתח ההצפנה, אולי דרך נקודות חולשה ב-KMS או התקפות נגד מנהלי המפתחות.
- התקפת מניעת שירות: תוקף יכול לשבש את הגישה למפתחות ההצפנה או לנתונים על ידי תקיפה של ה-KMS או של מערכת האחסון.
- אובדן המפתח: מחיקה או אובדן של המפתח בטעות עלולים לגרום לאובדן נתונים או לאובדן הגישה אליהם.
- השבתה זמנית של אותות אכיפה:
- להטמיע מדיניות קפדנית של בקרת גישה וניהול מפתחות.
- לעקוב אחרי היומנים והפעילות של KMS כדי לזהות התנהגות חשודה.
פתרון בעיות
בטבלה הבאה מתוארים כמה מצבי שגיאה נפוצים שיכולים להתרחש בנתוני configstore שמוצפנים באמצעות CMEK, הודעת השגיאה המשוערת שמוחזרת על ידי Apigee API והשלבים המומלצים לפתרון הבעיות.
| הודעת שגיאה או תסמין | מטרה | מה צריך לעשות |
|---|---|---|
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create or enable trial org. CMEK is
not supported for trial orgs. To use trial orgs, adjust the
gcp.restrictNonCmekServices constraint for this project.
|
ניסיתם להקצות ארגון לתקופת ניסיון, אבל בפרויקט קיים אילוץ של מדיניות הארגון. |
אין תמיכה ב-CMEK בארגונים בתקופת ניסיון או הערכה. כדי להקצות ארגון לניסיון, צריך לעדכן את האילוץ constraints/gcp.restrictNonCmekServices במדיניות הארגון ולהסיר את Apigee מרשימת השירותים שנדחו.
|
Constraint constraints/gcp.restrictCmekCryptoKeyProjects
violated for projects/my-project attempting to use
projects/my-project/locations/my-location/keyRings/kr-1/cryptoKeys/ck-1
key. Use a key from a project that is allowed by the
gcp.restrictCmekCryptoKeyProjects constraint.
|
ניסיתם להקצות ארגון שבו קיים אילוץ של מדיניות הארגון לפרויקט, וציינתם KMS CryptoKey שלא נמצא ברשימת ההיתרים. |
הגדרת את constraints/gcp.restrictCmekCryptoKeyProjects
במדיניות הארגון, ולכן צריך לספק מפתח CMEK מהפרויקטים
המותרים שציינת. כדי ליצור ארגון או מכונות, צריך לספק את ה-CMEK מפרויקט מורשה.
לחלופין, אפשר לעדכן את האילוץ של מדיניות הארגון constraints/gcp.restrictCmekCryptoKeyProjects כדי לאפשר מפתחות מהפרויקט הספציפי Google Cloud שרוצים.
|
Apigee does not have permission to access key "..."
|
משתמש ביטל את הגישה של Apigee למפתח ה-KMS שסופק, כלומר:
על ידי הסרת התפקיד roles/cloudkms.cryptoKeyEncrypterDecrypter.
|
המשתמש צריך לבדוק את התפקידים שהוגדרו במפתח KMS ולוודא שלסוכן השירות של Apigee יש את ההרשאות הנדרשות. |
Unable to encrypt/decrypt data. Cloud KMS Error: "..." is not
enabled, current state is: DESTROYED.
|
משתמש השבית או מחק את גרסת המפתח שמשמשת להצפנה או לפענוח של הנתונים המבוקשים. | המשתמש צריך להפעיל מחדש את גרסת המפתח, אם אפשר. אם המפתח או גרסת המפתח הושמדו, אי אפשר לשחזר את הנתונים (כך זה תוכנן). |
No new Analytics data for US/EU users
|
אחת מהסיבות האפשריות לבעיה הזו היא שמשתמש ביטל, השבית או מחק מפתח של אזור אחד. | המשתמש צריך להפעיל מחדש או לשחזר את הגישה למפתח באזור יחיד. |
Control plane key "..." in region "..." is not valid for this
control plane instance. Supported region(s) are "…".
|
המשתמש סיפק מפתח למישור בקרה באזור אחד, באזור שלא תקין או לא נתמך באזור או במספר האזורים שמישור הבקרה משרת. | המשתמש צריך לספק מפתח באחד מהאזורים הנתמכים או לבחור להשתמש במכונה אחרת של מישור הבקרה. |
Multi-region control plane key is not valid for this control
plane instance. Specify only the "apiConsumerDataEncryptionKeyName"
field.
|
משתמש סיפק מפתח של מישור בקרה במספר אזורים במישור בקרה שקיים רק באזור אחד (כלומר, לא מישור בקרה במספר אזורים). | המשתמש צריך להשמיט את שדה המפתח של מספר אזורים או לבחור להשתמש במכונה של מישור הבקרה במספר אזורים. |
Multi-region control plane key is not valid for this control
plane instance. Specify a multi-region key with region "..."
|
המשתמש סיפק מפתח של מישור בקרה במספר אזורים למכונה הלא נכונה של מישור בקרה במספר אזורים (למשל, מפתח "us" למכונה "eu" של מישור הבקרה) | המשתמש צריך להשתמש במפתח במספר אזורים באזור הנכון, או לבחור להשתמש במכונה אחרת של מישור הבקרה במספר אזורים. |
שאלות נפוצות
איך משנים את המפתחות הקיימים כדי להשתמש ב-Cloud EKM?
אי אפשר. אפשר להגדיר את Cloud EKM רק כשיוצרים את הארגון ב-Apigee, ואי אפשר להוסיף או לשנות מפתחות הצפנה אחרי השלב הזה. אי אפשר להמיר ארגון קיים או את המפתחות שכבר נמצאים בשימוש ל-Cloud EKM.
כדי להשתמש ב-Cloud EKM, צריך ליצור ארגון חדש ב-Apigee שמוגדר לשימוש ב-CMEK עם Cloud EKM, ואז להעביר את המשאבים לארגון החדש. מידע נוסף זמין במאמר EKM.