יצירה וגישה לסוד באמצעות Secret Manager
Google Cloudמידע נוסף על יצירה וגישה לסודות באמצעות Secret Manager
לחצו על תראו לי איך כדי לקרוא הסבר מפורט על המשימה ישירות במסוף Google Cloud :
לפני שמתחילים
- מפעילים את Secret Manager API, פעם אחת לכל פרויקט.
- מקצים את התפקיד Secret Manager Admin (אדמין של Secret Manager) (
roles/secretmanager.admin) בפרויקט, בתיקייה או בארגון. כדי לבצע אימות ל-Secret Manager API, אפשר להשתמש באחת מהדרכים הבאות:
- אם אתם משתמשים בספריות לקוח כדי לגשת ל-Secret Manager API, אתם צריכים להגדיר Application Default Credentials.
- אם אתם משתמשים ב-Google Cloud CLI כדי לגשת ל-Secret Manager API, אתם צריכים להשתמש בפרטי הכניסה של Google Cloud CLI כדי לבצע אימות.
- כדי לאמת קריאה ל-REST, משתמשים בפרטי הכניסה ל-Google Cloud CLI או ב-Application Default Credentials.
יצירת סוד וגישה לגרסת סוד
בדוגמאות הבאות מוסבר איך ליצור סוד ולגשת לתוכן של גרסת סוד.
המסוף
כדי ליצור את הסוד ואת גרסת הסוד:
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
בדף Secret Manager, לוחצים על Create Secret (יצירת סוד).
-
בדף יצירת Secret, בשדה שם, מזינים
my-secret. -
בשדה ערך סודי, מזינים
my super secret data. -
לוחצים על הלחצן Create secret.
כדי לגשת לתוכן של הגרסה הסודית:
-
נכנסים לדף Secret Manager במסוף Google Cloud .
-
בדף Secret Manager (ניהול סודות), לוחצים על my-secret.
-
בדף Secret details (פרטי הסוד), בטבלה Versions (גרסאות), מוצאים את גרסה 1.
-
בעמודה פעולות, לוחצים על הצגת אפשרויות נוספות.
-
בתפריט, לוחצים על הצגת ערך הסוד.
-
מופיעה תיבת דו-שיח עם ערך הסוד. לוחצים על סיום כדי לסגור את תיבת הדו-שיח.
gcloud
כדי להשתמש ב-Secret Manager בשורת הפקודה, קודם צריך להתקין את Google Cloud CLI או לשדרג לגרסה 378.0.0 ואילך. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
כדי ליצור סוד ולאחסן מחרוזת כתוכן של הגרסה הראשונה של הסוד:
$ echo -n "my super secret data" | gcloud secrets create my-secret \
--replication-policy="replication-policy" \
--data-file=-
כאשר replication-policy הוא automatic או user-managed.
כדי לגשת לתוכן של גרסה ספציפית של סוד:
$ gcloud secrets versions access 1 --secret="my-secret"
כדי לגשת לתוכן של הגרסה האחרונה של הסוד:
$ gcloud secrets versions access latest --secret="my-secret"
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.
API
בדוגמאות האלה נעשה שימוש ב-curl כדי להדגים את השימוש ב-API. אפשר ליצור אסימוני גישה באמצעות הפקודה gcloud auth print-access-token. ב-Compute Engine או ב-GKE, צריך לעבור אימות באמצעות ההיקף cloud-platform.
כדי ליצור את הסוד ולאחסן מחרוזת כתוכן של גרסת סוד:
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets?secretId=my-secret" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"replication\": {\"automatic\": {}}}"
כדי לגשת לתוכן של הגרסה הסודית:
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/my-secret/versions/1:access" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"