במאמר הזה מוסבר איך לפרש ולפתור שגיאות שעלולות להתרחש כשמשתמשים ב-Cloud External Key Manager (Cloud EKM).
מבנה השגיאה
מבנה הודעות השגיאה מספק רמת פירוט גבוהה ככל האפשר כדי לעזור לכם לאבחן את הבעיה ולפתור אותה. השגיאות מוחזרות במבנה google.rpc.Status. בתוך המבנה הזה:
- בשדה
google.rpc.Status.codeמוצגת הקטגוריה הרחבה של השגיאה. - בשדה
google.rpc.Status.messageמוצגת הודעה שאנשים יכולים לקרוא, כולל פרטים על הפעולה הספציפית שניסיתם לבצע והצעות לפתרון הבעיה בהתאם להקשר. אם הערך של
google.rpc.Status.codeהואFAILED_PRECONDITION, המבנה שלgoogle.rpc.PreconditionFailureקריא למכונה. הוא מכיל שני מבניviolation.-
violation[0]מכילה מידע על מצב המפתח של Cloud EKM.
violation[1]מכיל מידע על הניסיון ליצור קשר עם מערכת השותף החיצוני לניהול מפתחות.השדה
violation[1].typeמכיל מידע על סוג השגיאה. ב-Cloud EKM, המידע הזה נקרא 'דומיין השגיאה'.אם השגיאות האלה נמשכות, צריך לפנות לתמיכה של השותף החיצוני לניהול מפתחות.
-
בהפניה הזו, ההודעות ב-google.rpc.Status.message נחתכות כדי שיהיה קל יותר לקרוא אותן. החלק שקוצץ כולל מידע כמו URI של מפתח חיצוני או נתיב מפתח.
פתרון בעיות
שגיאות שמתרחשות כשמשתמשים ב-Cloud EKM יכולות להיגרם מבעיות בקלט, ב-Cloud EKM, במערכת של שותף חיצוני לניהול מפתחות, בתקשורת ביניהם או בגורמים אחרים. בקטע של כל סוג שגיאה מופיע מידע ספציפי לפתרון בעיות.
בהתאם לסוג השגיאה, יכול להיות שתצטרכו לפנות אל התמיכה של Cloud EKM או אל התמיכה של מערכת השותפים לניהול מפתחות חיצוני.
אם השגיאה לא מופיעה בטבלאות שבהמשך, אפשר לעיין במאמר פתרון בעיות ב-EKM דרך שגיאות ב-VPC.
שגיאות בקלט
כדי לפתור את הבעיה, פועלים לפי העצה שמופיעה בשדה google.rpc.Status.message של השגיאה. אם הבעיה נמשכת, אפשר לפנות Google Cloud לתמיכה.
אלא אם צוין אחרת, השגיאות בקטע הזה הן ברמת google.rpc.Status.code של
FAILED_PRECONDITION.
google.rpc.Status.message |
violation[1].type(דומיין השגיאה) |
פתרון בעיות |
|---|---|---|
Permission was denied when accessing the EKM_ELEMENT. |
EXTERNAL_PERMISSION_DENIED |
אם הערך של EKM_ELEMENT הוא key, Cloud EKM משבית גם את גרסת המפתח. צריך לתת את ההרשאות המתאימות במנהל המפתחות החיצוני, ואז לנסות שוב לסובב את המפתח של Cloud EKM.אם EKM_ELEMENT הוא crypto space או EKM host, צריך להקצות לחשבון השירות את התפקיד או ההרשאות המתאימים, ואז לנסות שוב. |
Could not find a EKM_ELEMENT או Could not query EKM host. |
EXTERNAL_NOT_FOUND |
אם EKM_ELEMENT הוא key, צריך לוודא שה-URI של המפתח החיצוני או נתיב המפתח נכונים.כש-EKM_ELEMENT הוא crypto space, בודקים שנתיב המרחב הקריפטוגרפי נכון. אם אי אפשר לשלוח שאילתה ל- EKM host, צריך לוודא ששם המארח של EKM נכון. אם האיות נכון, צריך לפנות לתמיכה של מערכת השותפים החיצונית לניהול מפתחות. |
Key URI has invalid format. |
EXTERNAL_KEY_URI_INVALID |
צריך לבדוק שה-URI של המפתח בבקשה הזו נכון ולנסות שוב על ידי החלפת המפתח ב-Cloud EKM. |
Key URI host is not supported. |
EXTERNAL_KEY_HOST_NOT_WHITELISTED |
צריך לוודא שה-URI של המפתח נכון. אם אתם מפעילים פריסה משלכם של מערכת שותף חיצוני לניהול מפתחות, אתם יכולים לפנות אל Google Cloud התמיכה. אחרת, פנו לתמיכה של מערכת השותפים החיצונית לניהול מפתחות. |
Could not resolve the domain name for EKM_ELEMENT. |
DNS |
צריך לוודא שערך ה-URI של המפתח, נתיב המפתח, המרחב הקריפטוגרפי או שם המארח של ה-EKM נכונים. אם כן, פנו לתמיכה של מערכת השותפים החיצונית לניהול מפתחות. |
שגיאות שאפשר לנסות שוב
כדי לפתור את הבעיה, פועלים לפי העצה שמופיעה בשדה google.rpc.Status.message של השגיאה. אם אתם נתקלים לעיתים קרובות בפסק זמן או בשגיאות רשת, ודאו שהמיקום הגיאוגרפי של מפתחות Cloud EKM קרוב ככל האפשר לאזור שבו אתם משתמשים במפתחות החיצוניים. אם הבעיה נמשכת, פנו לתמיכה של השותף החיצוני לניהול מפתחות.
אלא אם צוין אחרת, השגיאות שמופיעות בקטע הזה הן google.rpc.Status.code
של FAILED_PRECONDITION. הערך של EKM_ELEMENT יכול להיות אחד מהערכים הבאים: key, crypto space או EKM host.
google.rpc.Status.message |
violation[1].type(דומיין השגיאה) |
|---|---|
Throttled when trying to access key URI. |
EXTERNAL_RESOURCE_EXHAUSTED |
Could not reach the EKM_ELEMENT due to an external networking error. |
UNREACHABLE_NETWORK |
Could not reach the EKM_ELEMENT because the external key manager reports that it is overloaded. |
OVERLOADED_EKM |
Timed out when trying to access the EKM_ELEMENT. |
TIMEOUT |
| השגיאה הזו מתרחשת בדרך כלל כשהתגובה של ה-EKM איטית מדי. האיטיות יכולה להיגרם מכך שמערכת ה-EKM מקבלת יותר בקשות ממה שהיא יכולה לטפל בהן, או בגלל חביון רשת גבוה מדי. | REQUEST_CANCELLED |
שגיאות במערכת חיצונית לניהול מפתחות
אם נתקלתם בשגיאות האלה והן נמשכות, פנו לתמיכה של השותף החיצוני לניהול מפתחות.
אלא אם צוין אחרת, השגיאות שמופיעות בקטע הזה הן google.rpc.Status.code
של FAILED_PRECONDITION. הערך של EKM_ELEMENT יכול להיות אחד מהערכים הבאים: key, crypto space או EKM host.
google.rpc.Status.message |
violation[1].type(דומיין השגיאה) |
|---|---|
Could not validate the TLS server certificate for the EKM_ELEMENT. |
TLS_CERT |
Got garbled or unusable response when trying to access the EKM_ELEMENT. |
UNEXPECTED_RESPONSE |
External server error when trying to access the EKM_ELEMENT. |
EXTERNAL_SERVER_ERROR |
The external key manager indicated they have not implemented the appropriate method to support Cloud KMS's EKM_API.
EKM_API יכול להיות אחד מהערכים הבאים: AsymmetricSign, CheckCryptoSpacePermissions, CreateKey, Decrypt, DestroyKey, Encrypt, GetInfo או GetPublicKey |
EXTERNAL_NOT_IMPLEMENTED |
Got unexpected error when trying to access the EKM_ELEMENT. |
UNEXPECTED_ERROR |
Decryption failed: The EKM reports that decryption failed.המשמעות היא שכתובת ה-URI של המפתח תקינה, אבל המערכת של השותף החיצוני לניהול מפתחות לא הצליחה לפענח את ה-blob העטוף או את הנתונים המאומתים הנוספים (AAD). google.rpc.Status.code הוא INVALID_ARGUMENT. |
DECRYPTION_FAILED |
קבלת תמיכה
אם נתקלתם בשגיאה שלא מופיעה ברשימה הזו, אתם יכולים לפנות אלGoogle Cloud התמיכה.