בדף הזה מתואר איך לאחזר רשימה של כל הגרסאות השונות של סוד שנוצרו לאורך זמן, ואיך לראות את המטא-נתונים של גרסה ספציפית של סוד.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להצגת רשימת הגרסאות של הסודות ולצפייה בפרטי הגרסאות, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Secret Manager Viewer (roles/secretmanager.viewer) בסוד, בפרויקט, בתיקייה או בארגון.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הצגת רשימה של גרסאות של סודות
פירוט הגרסאות של סוד יכול להיות שימושי במקרים הבאים:
-
אפשר לראות איך סוד השתנה עם הזמן, מי ביצע את השינויים ומתי. הפעולה הזו נדרשת לצורך בדיקה ותאימות.
-
אם סוד עודכן בטעות או נפרץ, אפשר לחזור לגרסה קודמת וטובה.
-
אתם יכולים לזהות גרסאות שכבר לא נמצאות בשימוש ואפשר למחוק אותן בבטחה.
-
אפשר לפתור בעיות. לדוגמה, אם יש בעיות באפליקציה, אפשר לבדוק גרסאות קודמות של סוד כדי לראות אם שינוי בסוד הוא הגורם לבעיות.
כדי להציג את כל הגרסאות של סוד, משתמשים באחת מהשיטות הבאות:
המסוף
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
לוחצים על סוד כדי לגשת לגרסאות שלו.
הגרסאות ששייכות לסוד מוצגות בטבלה Versions (גרסאות).
gcloud
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- SECRET_ID: מזהה הסוד
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets versions list SECRET_ID
Windows (PowerShell)
gcloud secrets versions list SECRET_ID
Windows (cmd.exe)
gcloud secrets versions list SECRET_ID
התשובה תכיל את הסוד.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט Google Cloud
- SECRET_ID: מזהה הסוד
ה-method של ה-HTTP וכתובת ה-URL:
GET https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions
גוף בקשת JSON:
{}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"versions": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID",
"createTime": "2024-09-04T06:41:57.859674Z",
"state": "ENABLED",
"etag": "\"1621457b3c1459\""
}
],
"totalSize": 1
}
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח בשפת C# ולהתקין את Secret Manager C# SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
Go
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Go ולהתקין את Secret Manager Go SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Secret Manager Java SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Node.js ולהתקין את Secret Manager Node.js SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
PHP
כדי להריץ את הקוד הזה, קודם צריך לקרוא על שימוש ב-PHP ב-Google Cloud ולהתקין את Secret Manager PHP SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח בשפת Python ולהתקין את Secret Manager Python SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Ruby
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Ruby ולהתקין את Secret Manager Ruby SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
איך מקבלים פרטים על גרסה של סוד
במהלך התהליך הזה תוכלו לראות את המטא-נתונים של גרסה של סוד, כמו מזהה הגרסה, תאריך ושעת היצירה, פרטי ההצפנה והסטטוס. כשמציגים את המטא-נתונים של גרסה של סוד, מקבלים גישה למידע על הגרסה של הסוד, אבל לא לערך הסוד עצמו. כדי לראות את ערך הסוד, אפשר לעיין במאמר בנושא גישה לגרסה של סוד.
כדי לראות את המטא-נתונים של גרסת סוד, משתמשים באחת מהשיטות הבאות:
המסוף
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
לוחצים על סוד כדי לגשת לגרסאות שלו.
הגרסאות ששייכות לסוד מוצגות בטבלה Versions (גרסאות). בטבלה מוצגים גם מזהה הגרסה והמטא-נתונים שלה.
gcloud
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- VERSION_ID: המזהה של גרסת הסוד
- SECRET_ID: מזהה הסוד
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
התשובה תכיל את הסוד.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט Google Cloud
- SECRET_ID: מזהה הסוד
- VERSION_ID: המזהה של גרסת הסוד
ה-method של ה-HTTP וכתובת ה-URL:
GET https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID
גוף בקשת JSON:
{}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID",
"createTime": "2024-09-04T06:41:57.859674Z",
"state": "ENABLED",
"etag": "\"1621457b3c1459\""
}
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח בשפת C# ולהתקין את Secret Manager C# SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
Go
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Go ולהתקין את Secret Manager Go SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Secret Manager Java SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Node.js ולהתקין את Secret Manager Node.js SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
PHP
כדי להריץ את הקוד הזה, קודם צריך לקרוא על שימוש ב-PHP ב-Google Cloud ולהתקין את Secret Manager PHP SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות עם ההיקף cloud-platform.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח בשפת Python ולהתקין את Secret Manager Python SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
Ruby
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Ruby ולהתקין את Secret Manager Ruby SDK. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.