במאמר הזה מוסבר איך למחוק באופן סופי מפתחות וגרסאות מפתח של Cloud Key Management Service. אי אפשר לבטל את הפעולה הזו.
ב-Cloud KMS, השמדה ומחיקה הן פעולות שונות:
השמדה: השבתה קבועה של גרסת מפתח, כולל השמדה בלתי הפיכה של חומר המפתח הבסיסי אחרי תקופת ההשמדה שצוינה. אי אפשר להשתמש בגרסת מפתח במצב
DESTROYEDלפעולות קריפטוגרפיות, ולא יחויב עליה תשלום. אתם יכולים להשמיד גרסת מפתח ששימשה להצפנת נתונים כדי לגרוס נתונים בצורה קריפטוגרפית שאתם רוצים שלא יהיה אפשר לשחזר אותם באופן סופי. גרסאות מפתח שהושמדו עדיין נכללות ברשימות של משאבי Cloud KMS.מחיקה: מסירה מפתח או גרסת מפתח מרשימות של משאבי Cloud KMS ב Google Cloud מסוף, ב-Google Cloud CLI, ב-Cloud Key Management Service API ובספריות הלקוח. בפרויקטים עם הרבה מפתחות או גרסאות מפתח שכבר לא פעילים, מחיקה מייעלת את פעולות החיפוש והרשימה. אי אפשר להשתמש שוב בשמות של מפתחות Crypto שנמחקו. אפשר להציג רשימה של שמות CryptoKey שנמחקו ואי אפשר לעשות בהם שימוש חוזר באמצעות method
retiredResources.list.
לפני שמתחילים
כדי לקבל את ההרשאות שדרושות למחיקה ולצפייה במשאבי Cloud KMS, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Cloud KMS administrator (אדמין של Cloud KMS) (roles/cloudkms.admin) במפתח.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד מוגדר מראש עם ההרשאות שנדרשות למחיקה ולצפייה במשאבי Cloud KMS. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי למחוק משאבים של Cloud KMS ולצפות בהם, נדרשות ההרשאות הבאות:
-
כדי למחוק גרסת מפתח:
cloudkms.cryptoKeyVersions.delete -
כדי למחוק מפתח:
cloudkms.cryptoKeys.delete -
כדי לראות משאבים שנמחקו:
-
cloudkms.retiredResources.get -
cloudkms.retiredResources.list
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
מחיקת גרסה של מפתח
אפשר למחוק גרסת מפתח אם היא במצב DESTROYED, IMPORT_FAILED או GENERATION_FAILED. אם גרסת המפתח יובאה, אפשר למחוק אותה רק אם הייבוא נכשל.
כדי למחוק גרסה של מפתח באופן סופי:
המסוף
נכנסים לדף Key Management במסוף Google Cloud .
לוחצים על השם של אוסף המפתחות שמכיל את המפתח ואת גרסת המפתח שרוצים למחוק.
לוחצים על המפתח שמכיל את גרסת המפתח שרוצים למחוק.
בטבלה Versions, מאתרים את גרסת המפתח שרוצים למחוק ולוחצים על More actions.
בתפריט פעולות נוספות, לוחצים על מחיקה.
בהודעת האישור, מזינים את שם המפתח ולוחצים על מחיקה.
gcloud
כדי למחוק גרסת מפתח, מריצים את הפקודה הבאה:
gcloud kms keys versions delete KEY_VERSION \
--location=LOCATION \
--keyring=KEY_RING \
--key=KEY_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
KEY_VERSION: מספר גרסת המפתח שרוצים למחוק באופן סופי. גרסת המפתח שצוינה חייבת להיות במצבDESTROYED,IMPORT_FAILEDאוGENERATION_FAILED. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
KEY_RING: השם של אוסף המפתחות שמכיל את המפתח. -
KEY_NAME: השם של המפתח שמכיל את גרסת המפתח שרוצים למחוק באופן סופי.
Go
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
API
כדי למחוק גרסת מפתח, צריך להפעיל את שיטת
cryptoKeyVersions.delete. השיטה הזו מחזירה פעולה ממושכת שאפשר לבצע לגביה שאילתה כדי לאשר שגרסת המפתח נמחקה.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את מחזיק המפתחות. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
KEY_RING: השם של אוסף המפתחות שמכיל את המפתח. -
KEY_NAME: השם של המפתח שמכיל את גרסת המפתח שרוצים למחוק באופן סופי. -
KEY_VERSION: מספר גרסת המפתח שרוצים למחוק באופן סופי. גרסת המפתח שצוינה חייבת להיות במצבDESTROYED,IMPORT_FAILEDאוGENERATION_FAILED.
הפלט של הפקודה מחזיר
Operation. תצטרכו אתnameשל הפעולה לשלב הבא.-
כדי לוודא שגרסת המפתח נמחקה, אפשר להפעיל את השיטה
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את מחזיק המפתחות. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
OPERATION_NAME: שם הפעולה שהוחזר מהשיטה הקודמת.
כשהפלט של ה-method הזה מראה ש-
doneהואtrue, הפעולה הסתיימה. אם לא מצויןerror, סימן שגרסת המפתח נמחקה לצמיתות.-
מחיקת מפתח
אפשר למחוק מפתח אם הוא עומד בתנאים הבאים:
- המפתח לא מכיל גרסאות מפתח שעדיין לא נמחקו.
- לא מתוזמנת רוטציית מפתחות אוטומטית של המפתח.
- המפתח לא נוצר על ידי Cloud KMS Autokey.
כדי למחוק מפתח באופן סופי:
המסוף
נכנסים לדף Key Management במסוף Google Cloud .
לוחצים על השם של אוסף המפתחות שמכיל את המפתח שרוצים למחוק.
אפשר למחוק את המפתח באחד מהמקומות הבאים:
- דף רשימת המפתחות: בטבלה מפתחות למחזיק המפתחות 'KEY_RING', מאתרים את המפתח שרוצים למחוק, לוחצים על פעולות על מפתחות ואז על מחיקה.
- דף הפרטים של המפתח: לוחצים על השם של המפתח שרוצים למחוק כדי לפתוח את דף הפרטים של המפתח. בחלק העליון של הדף, לוחצים על מחיקה.
בהודעת האישור, מזינים את שם המפתח ולוחצים על מחיקה.
gcloud
כדי למחוק מפתח, מריצים את הפקודה הבאה:
gcloud kms keys delete KEY_NAME \
--location=LOCATION \
--keyring=KEY_RING
מחליפים את מה שכתוב בשדות הבאים:
-
KEY_NAME: השם של המפתח שרוצים למחוק באופן סופי. המפתח לא יכול להכיל גרסאות של מפתחות שכבר לא קיימות, והוא לא יכול להיות מפתח שנוצר על ידי Autokey. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
KEY_RING: השם של אוסף המפתחות שמכיל את המפתח.
Go
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
API
כדי למחוק מפתח, צריך לבצע קריאה ל-method
cryptoKey.delete. השיטה הזו מחזירה פעולה ממושכת שאפשר לדגום כדי לוודא שהמפתח נמחק.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את מחזיק המפתחות. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
KEY_RING: השם של אוסף המפתחות שמכיל את המפתח. -
KEY_NAME: השם של המפתח שרוצים למחוק באופן סופי. המפתח לא יכול להכיל גרסאות של מפתחות שכבר לא קיימות, והוא לא יכול להיות מפתח שנוצר על ידי Autokey.
הפלט של הפקודה מחזיר
Operation. תצטרכו אתnameשל הפעולה לשלב הבא.-
כדי לוודא שהמפתח נמחק, אפשר לבצע קריאה ל-method
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את מחזיק המפתחות. -
LOCATION: המיקום ב-Cloud KMS שבו נמצא אוסף המפתחות. -
OPERATION_NAME: שם הפעולה שהוחזר על ידי השיטה הקודמת.
כשהפלט של ה-method הזה מראה שהערך של
doneהואtrue, הפעולה הסתיימה. אם לא מצויןerror, המשמעות היא שהמפתח נמחק לצמיתות.-
הצגת השמות של משאבים שיצאו משימוש
אי אפשר להשתמש שוב בשמות של מפתחות שנמחקו באותוGoogle Cloud פרויקט. כך נמנע מצב שבו לשני מפתחות שונים יש אותו מזהה משאב. השמות של מפתחות שנמחקו מאוחסנים באובייקטים retiredResources. אפשר להריץ שאילתה על retiredResources כדי לראות שמות שלא ניתן לעשות בהם שימוש חוזר למשאבי Cloud KMS חדשים.
כדי לראות רשימה של כל המשאבים שהוצאו משימוש, פועלים לפי השלבים הבאים:
gcloud
מריצים את הפקודה הבאה:
gcloud kms retired-resources list \
--location=LOCATION
מחליפים את מה שכתוב בשדות הבאים:
-
LOCATION: המיקום שבו רוצים לראות את המשאבים שהוצאו משימוש.
Go
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
API
משתמשים בשיטה retiredResources.list:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/" \
--request "GET" \
--header "authorization: Bearer TOKEN"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו רוצים לראות את המשאבים שהוצאו משימוש. -
LOCATION: המיקום שבו רוצים לראות את המשאבים שהוצאו משימוש.
כדי לראות את המטא-נתונים של משאב ספציפי שהוצא משימוש, פועלים לפי השלבים הבאים:
gcloud
מריצים את הפקודה הבאה:
gcloud kms retired-resources describe RETIRED_RESOURCE \
--location=LOCATION
מחליפים את מה שכתוב בשדות הבאים:
-
RETIRED_RESOURCE: השם של המשאב שרוצים להציג. -
LOCATION: המיקום שבו רוצים להציג משאב שיצא משימוש.
Go
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
מידע על התקנת ספריית הלקוח של Cloud KMS ושימוש בה מופיע במאמר ספריות הלקוח של Cloud KMS.
כדי לבצע אימות ב-Cloud KMS, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
API
משתמשים בשיטה retiredResources.get:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/RETIRED_RESOURCE" \
--request "GET" \
--header "authorization: Bearer TOKEN"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט שבו רוצים להציג משאב שיצא משימוש. -
LOCATION: המיקום שבו רוצים להציג משאב שיצא משימוש. -
RETIRED_RESOURCE: השם של המשאב שרוצים להציג.
הפלט של השיטה כולל את resourceType, את deleteTime ואת מזהה המשאב המלא של המשאב שנמחק.