בדף הזה מוסבר איך מוסיפים הערות לסוד, ואיך עורכים וצופים בהערות האלה.
סקירה כללית
אפשר להשתמש בהערות כדי לאחסן מטא-נתונים מותאמים אישית לגבי סוד. לדוגמה, יכול להיות שתרצו להוסיף הערה לסוד עם הנתיב שבו הוא יותקן. ההערות יכולות לעזור לכם בדרכים הבאות:
-
כדי לסווג סודות לפי המטרה, הסביבה (פיתוח, Staging, ייצור) או רמת הרגישות שלהם. כך קל יותר לחפש, לסנן ולארגן סודות ב-Secret Manager.
-
כדי לציין את הפורמט או המבנה הספציפיים של ערך הסוד, ולעזור לעומס העבודה לפרש אותו בצורה נכונה.
-
כדי לספק רמזים לגבי אופן השימוש בסוד או שיקולים מיוחדים לגבי הטיפול בו.
לדוגמה, אם יש לכם סוד שמכיל סיסמה למסד נתונים, אתם יכולים להוסיף הערות כמו אלה:
-
environment:production -
purpose:database_access -
owner:database_team
ההערות האלה מאפשרות לזהות בקלות את המטרה של הסוד, את הסביבה שלו ואת האחראי עליו. בנוסף, עומס עבודה שזוכה לגישה לסוד הזה יכול להשתמש בהערות כדי לוודא שהוא משתמש בסיסמה הנכונה לסביבת הייצור.
הערות הן לא תוויות. התוויות משמשות למיון, לסינון ולקבוץ של משאבים, ואילו ההערות משמשות לאחסון מטא-נתונים שרירותיים ולא מזהים בסוד. יש מגבלה על התווים ועל אורך התווים כשמציינים מטא-נתונים בתווית. המטא-נתונים בהערה יכולים להיות קטנים או גדולים, מובנים או לא מובנים, והם יכולים לכלול תווים שאסורים בתוויות.
התפקידים הנדרשים
-
כדי להוסיף הערות לסוד ולעדכן אותן, צריך לקבל את התפקיד Secret Manager Admin (
roles/secretmanager.admin) בסוד, בפרויקט, בתיקייה או בארגון. -
כדי לראות את ההערות, צריך לקבל את התפקיד Secret Manager Viewer (
roles/secretmanager.viewer) בסוד, בפרויקט, בתיקייה או בארגון.
אי אפשר להעניק תפקידים בניהול הזהויות והרשאות הגישה (IAM) בגרסה של סוד. מידע נוסף זמין במאמר בקרת גישה באמצעות IAM.
הוספת הערות לסוד
אפשר להוסיף הערות כשיוצרים סוד חדש או מעדכנים סוד קיים. המטא-נתונים בהערה מאוחסנים כצמדי מפתח/ערך. כדי להוסיף הערות, משתמשים באחת מהשיטות הבאות:
המסוף
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
בדף Secret Manager, לוחצים על Create secret.
-
בדף יצירת Secret, מזינים שם ל-Secret בשדה שם.
-
מזינים ערך לסוד (לדוגמה,
abcd1234). אפשר גם להעלות קובץ טקסט שמכיל את ערך הסוד באמצעות האפשרות העלאת קובץ. הפעולה הזו יוצרת באופן אוטומטי את גרסת הסוד. -
עוברים לקטע הערות ולוחצים על הוספת הערה.
-
מזינים את המפתח ואת הערך התואם.
-
לוחצים על Create secret (יצירת סוד).
gcloud
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- SECRET_ID: מזהה הסוד
- KEY: מפתח ההערה
- VALUE: הערך התואם של מפתח ההערה
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets create SECRET_ID \ --set-annotations= KEY1=VAL1,KEY2=VAL2
Windows (PowerShell)
gcloud secrets create SECRET_ID ` --set-annotations= KEY1=VAL1,KEY2=VAL2
Windows (cmd.exe)
gcloud secrets create SECRET_ID ^ --set-annotations= KEY1=VAL1,KEY2=VAL2
התשובה תכיל את הסוד ואת ההערות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט Google Cloud
- SECRET_ID: מזהה הסוד
- KEY: מפתח ההערה
- VALUE: הערך התואם של מפתח ההערה
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=annotations
גוף בקשת JSON:
{'annotations': {'KEY1': 'VALUE1', 'KEY2': 'VALUE2' }}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X PATCH \
-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?updateMask=annotations"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=annotations" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dcd99c386\"",
"annotations": {
"key1": "value1",
"key2": "value2"
}
}
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.
כדי להוסיף הערות לסוד קיים, אפשר לעיין בקטע עריכת הערות במסמך הזה.
המפתחות של ההערות צריכים לעמוד בדרישות הבאות:
-
המפתחות צריכים להיות ייחודיים לסוד. אי אפשר לחזור על מפתח באותו סוד.
-
אורך המפתחות צריך להיות בין 1 ל-63 תווים.
-
הקידוד של המפתחות חייב להיות UTF-8, עד 128 בייטים.
-
המפתחות צריכים להתחיל ולהסתיים בתו אלפאנומרי.
-
המפתחות יכולים להכיל מקפים, קווים תחתונים ונקודות בין התווים האלפאנומריים.
-
הגודל הכולל של מפתחות וערכים של הערות צריך להיות קטן מ-16KiB.
עריכת הערות
כדי לערוך הערות, משתמשים באחת מהשיטות הבאות:
המסוף
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
ברשימה, מאתרים את הסוד ולוחצים על התפריט Actions שמשויך לסוד הזה. בתפריט פעולות, לוחצים על עריכה.
-
בדף עריכת סוד, עוברים לקטע הערות. כאן אפשר לשנות את הערך של הערה קיימת, למחוק את ההערה או להוסיף הערה חדשה.
-
אחרי שמבצעים את השינויים, לוחצים על עדכון הסוד.
gcloud
עריכה של הערות קיימות
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- SECRET_ID: מזהה הסוד
- KEY: מפתח ההערה
- VALUE: הערך התואם של מפתח ההערה
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets update SECRET_ID --update-annotations= KEY=VAL
Windows (PowerShell)
gcloud secrets update SECRET_ID --update-annotations= KEY=VAL
Windows (cmd.exe)
gcloud secrets update SECRET_ID --update-annotations= KEY=VAL
התשובה עורכת את הסוד ואת ההערות.
הסרה של הערה ספציפית
כדי להסיר הערות, משתמשים בפקודה הבאה:
gcloud secrets update SECRET_ID --remove-annotations= KEY=VALמחיקת כל ההערות
כדי לנקות את כל ההערות, משתמשים בפקודה הבאה:
gcloud secrets update SECRET_ID --clear-annotationsREST
כדי לנקות את כל ההערות, משתמשים בפקודה הבאה:
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט Google Cloud
- SECRET_ID: מזהה הסוד
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=annotations
גוף בקשת JSON:
{'annotations': {}}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X PATCH \
-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?updateMask=annotations"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=annotations" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dd90b37e7\""
}
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 .
-
בדף Secret Manager, לוחצים על הסוד שרוצים לראות את ההערות שלו.
-
ייפתח דף הפרטים של הסוד. לוחצים על הכרטיסייה סקירה כללית. כאן אפשר לראות את ההערות שצורפו לסוד. המפתחות מפורטים בעמודה הימנית, והערכים מוצגים בעמודה השמאלית.
gcloud
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- SECRET_ID: מזהה הסוד
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets describe SECRET_ID
Windows (PowerShell)
gcloud secrets describe SECRET_ID
Windows (cmd.exe)
gcloud secrets describe SECRET_ID
התשובה תכיל את הסוד ואת ההערות.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט Google Cloud
- SECRET_ID: מזהה הסוד
ה-method של ה-HTTP וכתובת ה-URL:
GET https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_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"
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" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dcd99c386\"",
"annotations": {
"key1": "value1",
"key2": "value2"
}
}
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.