בדף הזה מוסבר איך ליצור סוד. הסוד מכיל גרסה אחת או יותר של סודות, וגם מטא-נתונים כמו תוויות ומדיניות שכפול. התוכן בפועל של הסוד מאוחסן בגרסת סוד.
לפני שמתחילים
-
מגדירים אימות.
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API של Cloud de Confiance by S3NS , לא צריך להגדיר אימות.
gcloud
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud initREST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
מתקינים את ה-CLI של Google Cloud ואז נכנסים ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות ליצירת סוד, צריך לבקש מהאדמין להקצות לכם את התפקיד אדמין של Secret Manager (roles/secretmanager.admin) ב-IAM ברמת הפרויקט, התיקייה או הארגון.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
יצירת סוד
אפשר ליצור סודות באמצעות מסוף Cloud de Confiance , Google Cloud CLI, Secret Manager API או ספריות הלקוח של Secret Manager.
המסוף
-
נכנסים לדף Secret Manager במסוף Cloud de Confiance .
-
בדף Secret Manager, לוחצים על Create secret.
-
בדף יצירת Secret, מזינים שם ל-Secret בשדה שם. שם הסוד יכול להכיל אותיות רישיות וקטנות, ספרות, מקפים וקווים תחתונים. האורך המקסימלי של שם הוא 255 תווים.
-
(אופציונלי) (תצוגה מקדימה) בוחרים את סוג הסוד. אתם יכולים להשתמש בסוגי סודות כדי לסווג את הסודות שלכם.
סוגי הסודות הגלובליים הזמינים הם:
- פרטי כניסה אחרים למסד נתונים: לסודות שמכילים פרטי כניסה למסד נתונים.
- מפתח גישה: לסודות שמכילים מפתח גישה.
- אישור: לסודות שמכילים אישור.
- אחר: סודות שלא מתאימים לקטגוריות אחרות.
-
מזינים ערך לסוד (לדוגמה,
abcd1234). הערך של הסוד יכול להיות בכל פורמט, אבל לא יכול להיות גדול מ-64KiB. אפשר גם להעלות קובץ טקסט שמכיל את ערך הסוד באמצעות האפשרות Upload file. הפעולה הזו יוצרת באופן אוטומטי את גרסת הסוד. -
לוחצים על יצירת סוד.
gcloud
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- SECRET_ID: המזהה של הסוד.
- REPLICATION_POLICY: מדיניות השכפול של הסוד, שיכולה להיות אוטומטית או בניהול המשתמש.
מריצים את הפקודה הבאה:
Linux, macOS או Cloud Shell
gcloud secrets create SECRET_ID \ --replication-policy="REPLICATION_POLICY"
Windows (PowerShell)
gcloud secrets create SECRET_ID ` --replication-policy="REPLICATION_POLICY"
Windows (cmd.exe)
gcloud secrets create SECRET_ID ^ --replication-policy="REPLICATION_POLICY"
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS .
- SECRET_ID: המזהה של הסוד.
- REPLICATION_POLICY: מדיניות השכפול של הסוד, שיכולה להיות אוטומטית או מנוהלת על ידי המשתמש.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
גוף בקשת JSON:
{
"replication": {
"REPLICATION_POLICY": {}
}
}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X POST \
-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?secretId=SECRET_ID"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/secrets/SECRET_ID",
"createTime": "2024-03-25T08:24:13.153705Z",
"etag": "\"161477e6071da9\""
}
C#
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-C# ולהתקין את Secret Manager C# SDK. ב-Compute Engine או ב-GKE, צריך להזדהות באמצעות ההיקף cloud-platform.
Go
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Go ולהתקין את Secret Manager Go SDK. ב-Compute Engine או ב-GKE, צריך לבצע אימות באמצעות ההיקף cloud-platform.
Java
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Secret Manager Java SDK. ב-Compute Engine או ב-GKE, צריך לבצע אימות באמצעות ההיקף cloud-platform.
Node.js
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Node.js ולהתקין את Secret Manager Node.js SDK. ב-Compute Engine או ב-GKE, צריך לבצע אימות באמצעות ההיקף cloud-platform.
PHP
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך ללמוד על שימוש ב-PHP ב-Google Cloud ולהתקין את Secret Manager PHP SDK. ב-Compute Engine או ב-GKE, צריך להזדהות באמצעות ההיקף cloud-platform.
Python
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח בשפת Python ולהתקין את Secret Manager Python SDK. ב-Compute Engine או ב-GKE, צריך להזדהות באמצעות ההיקף cloud-platform.
Ruby
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח של Ruby ולהתקין את Secret Manager Ruby SDK. ב-Compute Engine או ב-GKE, צריך להזדהות באמצעות ההיקף cloud-platform.
הוספת גרסה של סוד
Secret Manager יוצר גרסאות אוטומטיות של נתוני סודות באמצעות גרסאות של סודות. פעולות שקשורות למפתחות, כמו גישה, השמדה, השבתה והפעלה, חלות על גרסאות ספציפיות של סודות. באמצעות Secret Manager, אפשר לשייך סודות לגרסאות ספציפיות כמו 42 או לכינויים דינמיים כמו latest. מידע נוסף זמין במאמר הוספת גרסת סוד.
גישה לגרסה של סוד
כדי לגשת לנתוני הסוד מגרסת סוד מסוימת לאימות מוצלח, ראו גישה לגרסת סוד.
המאמרים הבאים
- בודקים את המכסות והגבלת קצב של יצירת בקשות של סוגים שונים של בקשות API (גישה, קריאה וכתיבה) לכל פרויקט.
- איך מנהלים את הגישה לסודות
- איך מגדירים התראות על סוד