במאמר הזה מוסבר איך להפעיל ולהגדיר את Cloud KMS Autokey באמצעות מסוף Google Cloud , Google Cloud CLI, Cloud KMS API או Terraform. אתם יכולים להפעיל את Autokey עם אחסון מפתחות בפרויקט ייעודי לתיקייה, או להפעיל את Autokey עם אחסון מפתחות באותו פרויקט לפרויקט ספציפי או לכל הפרויקטים בתיקייה. מידע נוסף על Autokey זמין במאמר סקירה כללית על Autokey.
המסמך הזה מיועד לאדמינים.
העברת הגדרות של מפתחות אוטומטיים
כשמגדירים Autokey בתיקייה, תיקיות צאצא ופרויקטים בתוך התיקייה הזו מקבלים בירושה את הגדרת Autokey של תיקיית האב שלהם. כשמגדירים את Autokey בתיקיית צאצא או בפרויקט צאצא, אפשר להחליט אם להעביר את ההגדרה בירושה מהמשאב האב או ליצור הגדרת Autokey חדשה למשאב הזה. הגדרות של Autokey שמוחלות על משאבי צאצא מבטלות את ההגדרה של תיקיית האב.
בטבלה הבאה מוצגים תרחישים נתמכים לשימוש בהגדרת Autokey:
| סוג המשאב | הגדרת Autokey | תיאור |
|---|---|---|
| ארגון | לא רלוונטי | אי אפשר להפעיל את Autokey בארגונים. משאבי צאצא בארגון יורשים משאב AutokeyConfig ריק. במסוף Google Cloud , המשאבים האלה מציגים סטטוס של לא מופעל עבור Autokey. אם רוצים להגביל את השימוש ב-Autokey בארגון או להשבית אותו לגמרי, אפשר להשתמש במדיניות הארגון. מידע נוסף זמין במאמר בנושא שליטה בשימוש במפתחות אוטומטיים. |
| תיקייה | DEDICATED_KEY_PROJECT |
התכונה Autokey עם אחסון מפתחות ייעודי לפרויקט מופעלת בפרויקטים של משאבים בתיקייה. בפרויקטים של משאבים שמוגדרים עם ההגדרה הזו, Autokey יוצר מפתחות בפרויקט המפתחות הייעודי. |
| תיקייה | RESOURCE_PROJECT |
האפשרות 'הוספת מפתח אוטומטית' עם אחסון מפתחות באותו פרויקט מופעלת בפרויקטים של משאבים בתוך התיקייה. בפרויקטים של משאבים שמקבלים בירושה את ההגדרה הזו, Autokey יוצר מפתחות באותו פרויקט שבו נמצאים המשאבים שהוא מגן עליהם. |
| תיקייה | DISABLED |
התכונה Autokey מושבתת בתיקייה, אבל תיקיות צאצא ופרויקטים עדיין יכולים לעקוף את ההגדרה הזו. אם רוצים להגביל את השימוש ב-Autokey בתיקייה או להשבית אותו לגמרי, אפשר להשתמש במדיניות הארגון. מידע נוסף זמין במאמר בנושא שליטה בשימוש במקשי Autokey. |
| תיקייה | KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED |
התיקייה יורשת את הגדרת המקשים האוטומטיים מהתיקייה או מהארגון ברמת ההורה. |
| פרויקט | RESOURCE_PROJECT |
האפשרות 'מפתח אוטומטי' עם אחסון מפתחות באותו פרויקט מופעלת בפרויקט המשאב. למשאבים שנוצרו בפרויקט הזה, Autokey יוצר מפתחות באותו הפרויקט. |
| פרויקט | DISABLED |
התכונה 'הוספת נקודות מפתח אוטומטית' מושבתת בפרויקט המשאב. מפתחים שיוצרים משאבים בפרויקט הזה צריכים ליצור ולספק מפתחות באופן ידני אם הם רוצים להשתמש ב-CMEK למשאבים שהם יוצרים. |
| פרויקט | KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED |
הפרויקט יורש את הגדרת המקשים האוטומטיים מהתיקייה הראשית שלו. |
לפני שמתחילים
כדי להפעיל את Autokey עם אחסון מפתחות בפרויקט ייעודי לתיקייה, צריך לוודא שיש לכם את הדברים הבאים:
משאב ארגוני שמכיל תיקייה שבה רוצים להפעיל את Autokey. אם אין לכם תיקייה שבה אתם רוצים להפעיל את Autokey, אתם יכולים ליצור תיקיית משאבים חדשה. הפעלת Autokey בתיקייה הזו מפעילה את Autokey לכל פרויקטי המשאבים בתיקייה.
אם יש לכם פרויקטים של משאבים שבהם אתם רוצים להשתמש ב-Autokey עם אחסון מפתחות בפרויקט ייעודי, אבל הם לא נמצאים בתיקייה שבה תפעילו את Autokey, אתם יכולים להעביר פרויקטים קיימים של משאבים לתיקיות חדשות.
כדי להפעיל את Autokey עם אחסון מפתחות באותו פרויקט, צריך להיות לכם אחד מהדברים הבאים:
- פרויקט Google Cloud שבו רוצים להפעיל את Autokey, ושבו ההרשאה
keyHandles.createלא חסומה על ידי מדיניות דחייה של IAM. - Google Cloud תיקייה שבה רוצים להפעיל את Autokey, שמכילה לפחות פרויקט אחד שבו ההרשאה
keyHandles.createלא חסומה על ידי מדיניות דחייה של IAM.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להפעלה ולהגדרה של Autokey, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בתיקייה, בפרויקט או במשאב אב:
-
כדי להפעיל את Autokey:
- אדמין של Cloud KMS Autokey (
roles/cloudkms.autokeyAdmin) - אדמין Service Usage (
roles/serviceusage.serviceUsageAdmin)
- אדמין של Cloud KMS Autokey (
-
כדי להפעיל את Autokey עם אחסון מפתחות בפרויקט ייעודי:
- אדמין IAM בתיקייה (
roles/resourcemanager.folderIamAdmin) - משתמש בחשבון לחיוב (
roles/billing.user)
- אדמין IAM בתיקייה (
-
כדי לראות את ההגדרה של Autokey:
Cloud KMS Viewer (
roles/cloudkms.viewer) -
כדי לראות את כל ההגדרות האפקטיביות של Autokey:
- צפייה במשאבים בענן (
roles/cloudasset.viewer) – בארגון - צרכן שימוש בשירות (
roles/serviceusage.serviceUsageConsumer)
- צפייה במשאבים בענן (
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות להפעלה ולהגדרה של Autokey. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להפעיל ולהגדיר את Autokey, צריך את ההרשאות הבאות:
-
כדי להפעיל את Autokey:
-
cloudkms.autokeyConfigs.* -
serviceusage.services.enable
-
-
כדי להפעיל את Autokey עם אחסון מפתחות בפרויקט ייעודי:
-
resourcemanager.folders.get -
resourcemanager.folders.getIamPolicy -
resourcemanager.folders.setIamPolicy -
billing.resourceAssociations.create
-
-
כדי לראות את ההגדרה של Autokey:
-
cloudkms.folders.showEffectiveAutokeyConfig -
cloudkms.projects.showEffectiveAutokeyConfig
-
-
כדי לראות את כל ההגדרות האפקטיביות של Autokey:
-
cloudasset.assets.query -
serviceusage.services.use
-
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
הגדרת Terraform
בקטע הזה יש דוגמאות למשתנים ולמשאבים של Terraform, שהם תנאים מוקדמים לשאר הדוגמאות של Terraform במסמך הזה. אם אתם לא משתמשים ב-Terraform כדי ליצור או לנהל את ההגדרות של Autokey, אתם יכולים לדלג על הקטע הזה.
כאן אפשר ללחוץ כדי להציג או להסתיר את דוגמת ההגדרה של Terraform
הדוגמה הזו מבצעת את פעולות ההגדרה הבאות:
- מגדירים משתנים שמשמשים בדוגמאות הבאות של Terraform.
- יוצרים תיקיית משאבים. אפשר לדלג על השלב הזה אם אתם מתכננים להשתמש רק באחסון מפתחות באותו פרויקט בפרויקטים נפרדים.
- נותנים תפקידי אדמין ומשתמש ב-Autokey.
variable "organization_ID" { description = "Your Google Cloud Org ID" type = string default = "ORGANIZATION_ID" } variable "billing_account" { description = "Your Google Cloud Billing Account ID" type = string default = "BILLING_ACCOUNT_ID" } /* List the users who should have the authority to enable and configure Autokey at a folder level */ variable "autokey_folder_admins" { type = list(string) default = [AUTOKEY_ADMIN_USER_IDS] } /* List the users who should have the authority to protect their resources with Autokey */ variable "autokey_folder_users" { type = list(string) default = [AUTOKEY_DEVELOPER_USER_IDS] } /* List the users who should have the authority to manage crypto operations in the Autokey key project */ variable "autokey_project_kms_admins" { type = list(string) default = [KEY_PROJECT_ADMIN_USER_IDS] } # Create a new folder resource "google_folder" "autokey_folder" { parent = "organizations/${var.organization_ID}" display_name = "autokey_folder" } /* To use a folder that already exists, omit this block and instead create a variable for the folder ID instead, and then update subsequent resources to use the variable. */ # Set permissions for key admins to use Autokey in this folder resource "google_folder_iam_binding" "autokey_folder_admin" { folder = google_folder.autokey_folder.name role = "roles/cloudkms.autokeyAdmin" members = var.autokey_folder_admins } /* Set permissions for users to protect resources with Autokey in this folder */ resource "google_folder_iam_binding" "autokey_folder_users" { folder = google_folder.autokey_folder.name role = "roles/cloudkms.autokeyUser" members = var.autokey_folder_users }
מחליפים את מה שכתוב בשדות הבאים:
-
BILLING_ACCOUNT_ID: מזהה Google Cloud החשבון לחיוב. מזהה החשבון לחיוב הוא ערך אלפאנומרי באורך 18 תווים שמופרדים במקפים – לדוגמה,010101-F0FFF0-10XX01. -
AUTOKEY_ADMIN_USER_IDS: רשימה של כתובות אימייל של משתמשים שצריכים לקבל את התפקיד roles/cloudkms.autokeyAdmin, לדוגמה,"Ariel@example.com", "Charlie@example.com". -
AUTOKEY_DEVELOPER_USER_IDS: רשימה של כתובות אימייל של משתמשים שצריכים לקבל את התפקיד `roles/cloudkms.autokeyUser` – לדוגמה,"Kalani@example.com", "Mahan@example.com". -
KEY_PROJECT_ADMIN_USER_IDS: רשימה של כתובות אימייל של משתמשים שצריך להקצות להם את התפקיד `roles/cloudkms.admin` – לדוגמה,"Sasha@example.com", "Nur@example.com".
הגדרת Autokey עם אחסון מפתחות בפרויקט ייעודי
כשמשתמשים ב-Autokey עם אחסון מפתחות בפרויקט ייעודי בתיקייה, צריך לבחור פרויקט מפתח יחיד שיכיל את כל המפתחות שנוצרו על ידי Autokey באותה תיקייה. אם אתם משתמשים באחסון מפתחות באותו פרויקט, אתם לא צריכים פרויקט מפתחות ייעודי. אפשר להמשיך אל הפעלת Autokey עם אחסון מפתחות באותו פרויקט.
מומלץ ליצור פרויקט מפתחות חדש שיכיל משאבי Cloud KMS שנוצרו על ידי Autokey. מומלץ ליצור את פרויקט המפתח בתוך משאב הארגון. אם כבר יש לכם פרויקט מפתח שאתם רוצים להשתמש בו בשביל מפתחות שנוצרו על ידי Autokey, אתם יכולים לדלג על הקטע יצירת פרויקט מפתח ולהמשיך לקטע הגדרת פרויקט המפתח של Autokey בדף הזה.
אפשר ליצור את פרויקט המפתח בתוך אותה תיקייה שבה מתכננים להפעיל את Autokey. לא מומלץ ליצור משאבים אחרים בתוך פרויקט המפתח. אם תנסו ליצור משאבים שמוגנים על ידי Autokey בפרויקט המפתח, Autokey ידחה את הבקשה למפתח חדש.
אם אתם רוצים להעביר את הפרויקט ל-Assured Workloads בעתיד, כדאי ליצור את פרויקט המפתח בתוך אותה תיקייה שבה נמצאים המשאבים שמוגנים על ידי המפתחות האלה.
אם הארגון שלכם משתמש באילוץ מדיניות הארגון constraints/gcp.restrictCmekCryptoKeyProjects כדי לוודא שכל מפתחות ה-CMEK מגיעים מפרויקטים ספציפיים של מפתחות, אתם צריכים להוסיף את פרויקט המפתחות לרשימת הפרויקטים המורשים. מידע נוסף על מדיניות הארגון לגבי CMEK
יצירת פרויקט מרכזי
המסוף
-
נכנסים לדף Manage resources במסוף Google Cloud .
- בקטע Select organization (בחירת ארגון), בוחרים את משאב הארגון שבו רוצים ליצור פרויקט.
- לוחצים על יצירת פרויקט.
- בחלון New project שמופיע, מזינים שם לפרויקט ובוחרים חשבון לחיוב. שם הפרויקט יכול להכיל רק אותיות, מספרים, מירכאות בודדות, מקפים, רווחים או סימני קריאה, והוא צריך להיות באורך של 4 עד 30 תווים.
- בקטע Location, בוחרים את המשאב שרוצים להגדיר כמשאב האב של פרויקט המפתח.
- כדי לסיים את יצירת הפרויקט, לוחצים על יצירה.
gcloud
כדי ליצור פרויקט חדש:
gcloud projects create PROJECT_ID \ --PARENT_TYPE=PARENT_IDמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את מחזיק המפתחות. -
PARENT_TYPE: סוג המשאב שבו רוצים ליצור את פרויקט המפתח החדש. מזיניםorganizationכדי ליצור את פרויקט המפתח החדש בארגון נתון, או מזיניםfolderכדי ליצור את פרויקט המפתח החדש בתיקייה נתונה. -
PARENT_ID: המזהה של הארגון או התיקייה שבהם רוצים ליצור את פרויקט המפתח.
-
REST
כדי ליצור פרויקט חדש:
curl "https://cloudresourcemanager.googleapis.com/v3/projects/" --request "POST" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{ "projectId": "PROJECT_ID", "name": "PROJECT_NAME", "parent": "PARENT_TYPE/PARENT_ID" }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה שרוצים להשתמש בו לפרויקט המפתח הייעודי. -
PROJECT_NAME: השם שבו רוצים להשתמש לפרויקט המפתח הייעודי. -
PARENT_TYPE: סוג המשאב של משאב האב שבו רוצים ליצור את פרויקט המפתח הייעודי, לדוגמהorganizationsאוfolders. -
PARENT_ID": מזהה המשאב של משאב האב שבו רוצים ליצור את פרויקט המפתח הייעודי.
-
Terraform
בדוגמה הבאה של Terraform נוצר פרויקט מפתח ייעודי בתיקייה שנוצרה קודם.
/* Define the project ID to use for the dedicated key project. The project
ID must be 6 to 30 characters with lowercase letters, digits, hyphens. The
project ID must start with a letter. Trailing hyphens are prohibited */
variable "key_management_project_ID" {
description = "Sets the project ID for the dedicated key project. This project will contain the Key Rings and Keys generated by Cloud KMS Autokey"
type = string
default = "KEY_PROJECT_ID"
}
# Create a key project to store keys created by Autokey
resource "google_project" "key_management_project" {
project_id = var.key_management_project_ID
name = var.key_management_project_ID
billing_account = var.billing_account
folder_id = google_folder.autokey_folder.name
}
output "project_number" {
value = google_project.key_management_project.number
}
מחליפים את KEY_PROJECT_ID במזהה שבו רוצים להשתמש לפרויקט המפתח הייעודי – לדוגמה, autokey-key-project.
הגדרת שיעבוד פרויקט
אחרי שיוצרים את פרויקט Cloud KMS, מומלץ להגן על הפרויקט באמצעות מנעול למניעת מחיקה (גרסת טרום-השקה (Preview)) כדי למנוע מחיקה מקרית. כשמפעילים מנעול למניעת מחיקה של פרויקט, אי אפשר למחוק את פרויקט Cloud KMS עד שמסירים את המנעול.
הכנת פרויקט המפתח הייעודי
המסוף
מפעילים את Cloud KMS API בפרויקט המפתח.
אם משתמשים בפרויקט מפתח חדש, צריך להעניק הרשאות אדמין של Cloud KMS בפרויקט המפתח. חוזרים על השלבים הבאים כדי להעניק לעצמכם ולכל משתמש אחר עם הרשאת אדמין ב-Cloud KMS את התפקיד Cloud KMS Admin:
נכנסים לדף IAM במסוף Google Cloud .
בוחרים את פרויקט המפתח.
לוחצים על Grant Access ומזינים את כתובת האימייל של המשתמש.
בוחרים בתפקיד Cloud KMS Admin.
לוחצים על Save.
gcloud
מפעילים את Cloud KMS API בפרויקט של המפתח:
gcloud services enable cloudkms.googleapis.comמעניקים הרשאות אדמין ב-Cloud KMS בפרויקט המפתח. מריצים את הפקודה הבאה כדי להעניק את התפקיד
roles/cloudkms.adminלעצמכם ולכל משתמש אחר שהוא אדמין של Cloud KMS:gcloud projects add-iam-policy-binding PROJECT_NUMBER \ --role=roles/cloudkms.admin \ --member=user:KEY_ADMIN_EMAILמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_NUMBER: מספר הפרויקט של פרויקט המפתח. -
KEY_ADMIN_EMAIL: כתובת האימייל של המשתמש שאחראי לניהול מפתחות Cloud KMS.
-
REST
מפעילים את Cloud KMS API בפרויקט של המפתח:
curl "https://serviceusage.googleapis.com/v1/projects/PROJECT_ID/services/cloudkms.googleapis.com:enable" \ --request "POST" \ --header "authorization: Bearer TOKEN"מחליפים את
PROJECT_IDבמזהה של הפרויקט עם המקש הייעודי.מאחזרים את מדיניות ה-IAM הנוכחית של פרויקט המפתח הייעודי.
curl "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy" \ --request POST \ --header "authorization: Bearer TOKEN" --header "Content-Type: application/json; charset=utf-8" \ --data '{"options": {"requestedPolicyVersion": 3}}'התשובה מכילה את מדיניות ההרשאות הנוכחית של הפרויקט.
כדי לערוך את מדיניות ההרשאות שמוחזרת, מוסיפים את התפקיד
roles/cloudkms.adminלכל משתמש אדמין ב-Cloud KMS, כולל אתכם, באמצעות הקישור הבא בין תפקידים כדוגמה:json { "role": "roles/cloudkms.admin", "members": [ "PRINCIPAL_LIST" ], }מחליפים את
PRINCIPAL_LISTברשימה מופרדת בפסיקים של חשבונות ראשיים של משתמשים. לדוגמה,admin_1@example.com,admin_2@example.com.השינוי הזה ייכנס לתוקף רק אחרי שתגדירו את המדיניות החדשה.
מגדירים את מדיניות ההרשאות החדשה.
curl "https://cloudresourcemanager.googleapis.com/1/projects/PROJECT_ID:setIamPolicy" \ --request POST \ --header "authorization: Bearer TOKEN" \ --header "Content-Type: application/json; charset=utf-8" \ --data 'ALLOW_POLICY'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של פרויקט המפתחות הייעודי. -
ALLOW_POLICY: קובץ ה-JSON המעודכן של מדיניות ההרשאות שיצרתם בשלב הקודם, כולל ההרשאות הקיימות לתפקידים וההרשאות שזה עתה הוספתם.
-
Terraform
דוגמת ה-Terraform הבאה מפעילה את Cloud KMS API בפרויקט המפתח הייעודי ומעניקה את התפקיד roles/cloudkms.admin לחשבונות הראשיים של האדמין ב-Cloud KMS שזוהו קודם.
# Enable the Cloud KMS API in the key project
resource "google_project_service" "enable_api" {
service = "cloudkms.googleapis.com"
project = google_project.key_management_project.project_id
disable_on_destroy = false
disable_dependent_services = false
depends_on = [google_project.key_management_project]
}
/* Grant role for Cloud KMS admins to use Autokey in the
dedicated key project */
resource "google_project_iam_binding" "autokey_project_admin" {
project = google_project.key_management_project.project_id
role = "roles/cloudkms.admin"
members = var.autokey_project_kms_admins
depends_on = [ google_project.key_management_project ]
}
הפעלת Cloud KMS Autokey בתיקיית משאבים
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בכלי לבחירת ההקשר, בוחרים את התיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות ייעודי לפרויקט.
- בקטע Autokey (הקצאת מקשים אוטומטית), לוחצים על Manage (ניהול).
- לוחצים על Configure (הגדרה).
- בקטע מקור ההגדרה, בוחרים באפשרות הגדרה לתיקייה.
- בקטע Configuration (הגדרה), בוחרים באפשרות Enable dedicated-project key storage (הפעלת אחסון מפתחות בפרויקט ייעודי).
בוחרים את פרויקט המפתח ולוחצים על שליחה.
תופיע הודעה שתאשר שהתכונה Cloud KMS Autokey מופעלת בתיקייה.
gcloud
יוצרים קובץ YAML שמכיל את הפרטים הבאים
AutokeyConfig:name: folders/FOLDER_NUMBER/autokeyConfig keyProjectResolutionMode: DEDICATED_KEY_PROJECT keyProject: projects/PROJECT_IDמחליפים את מה שכתוב בשדות הבאים:
-
FOLDER_NUMBER: מספר התיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות בפרויקט ייעודי. -
PROJECT_ID: המזהה של פרויקט המפתחות הייעודי.
-
מחילים את
AutokeyConfigעל התיקייה:gcloud kms autokey-config update AUTOKEY_CONFIG_PATHמחליפים את AUTOKEY_CONFIG_PATH בנתיב לקובץ YAML שיצרתם בשלב הקודם.
REST
יוצרים את AutokeyConfig לתיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות ייעודי לפרויקט:
curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/autokeyConfig?updateMask=keyProject,keyProjectResolutionMode" \
--request "PATCH" \
--header "authorization: Bearer TOKEN" \
--header "content-type: application/json" \
--data '{"keyProject": "projects/PROJECT_ID", "keyProjectResolutionMode": "DEDICATED_KEY_PROJECT"}'
מחליפים את מה שכתוב בשדות הבאים:
-
FOLDER_ID: המזהה של התיקייה שבה רוצים להפעיל את Autokey. -
PROJECT_ID: מזהה פרויקט המפתח.
Terraform
/* Enable AutokeyConfig for dedicated-project key storage in the
folder */
resource "google_kms_autokey_config" "autokey_config" {
provider = google-beta
folder = google_folder.autokey_folder.folder_id
key_project = "projects/${google_project.key_management_project.project_id}"
key_project_resolution_mode = "DEDICATED_KEY_PROJECT"
/* For folder scope, valid values are DEDICATED_KEY_PROJECT,
RESOURCE_PROJECT, and DISABLED. With DEDICATED_KEY_PROJECT, define the
key_project as well. With RESOURCE_PROJECT, omit key_project. Keys will
be created in the same project as the protected resource. */
}
הגדרת סוכן השירות של Cloud KMS
סוכן השירות של Cloud KMS בפרויקט המפתחות יוצר מפתחות ומחיל קשרי מדיניות של IAM במהלך יצירת המשאבים, בשם אדמין Cloud KMS שהוא אדם. כדי ליצור ולהקצות מפתחות, לסוכן השירות של Cloud KMS נדרשות הרשאות אדמין של Cloud KMS.
gcloud
יוצרים את סוכן השירות של Cloud KMS:
gcloud beta services identity create --service=cloudkms.googleapis.com \ --project=PROJECT_NUMBERמחליפים את הערך
PROJECT_NUMBERבמספר הפרויקט של פרויקט המפתח.הפלט אמור להיראות כך:
Service identity created: service-PROJECT_NUMBER@gcp-sa-ekms.iam.gserviceaccount.comהפלט של הפקודה מציין שחשבון השירות של Cloud EKM (עם תת-הדומיין
gcp-sa-ekms) נוצר. עם זאת, הפקודה יוצרת גם את סוכן השירות של Cloud KMS (עם תחום המשנהgcp-sa-cloudkms), שהוא סוכן השירות שבו תשתמשו בהמשך ההוראות האלה.נותנים לסוכן השירות הרשאות אדמין ב-Cloud KMS:
gcloud projects add-iam-policy-binding PROJECT_NUMBER \ --role=roles/cloudkms.admin \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.comמחליפים את הערך
PROJECT_NUMBERבמספר הפרויקט של פרויקט המפתח.
Terraform
# Create the Cloud KMS service agent
resource "google_project_service_identity" "KMS_Service_Agent" {
provider = google-beta
service = "cloudkms.googleapis.com"
project = google_project.key_management_project.project_id
depends_on = [google_project.key_management_project]
}
/* Grant role for the Cloud KMS service agent to use delegated
Cloud KMS administrator permissions */
resource "google_project_iam_member" "autokey_project_admin" {
project = google_project.key_management_project.project_id
role = "roles/cloudkms.admin"
member = "serviceAccount:service-${google_project.key_management_project.number}@gcp-sa-cloudkms.iam.gserviceaccount.com"
}
הפעלת Autokey עם אחסון מפתחות באותו פרויקט
כשמשתמשים ב-Autokey עם אחסון מפתחות באותו פרויקט, Autokey יוצר את המפתחות בתוך אותו פרויקט כמו המשאבים שהם מגנים עליהם. פרויקטים שמשתמשים באחסון מפתחות באותו פרויקט יכולים להיות בתיקיות שמשתמשות באחסון מפתחות בפרויקט ייעודי. כשמפעילים את Autokey בפרויקט, ההגדרה של Autokey ברמת הפרויקט מבטלת את ההגדרה של Autokey בתיקיית ההורה.
כדי להפעיל את Autokey עם אחסון מפתחות באותו פרויקט עבור פרויקט מסוים, מבצעים את השלבים הבאים:
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בכלי לבחירת ההקשר, בוחרים את הפרויקט שבו רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט.
- בקטע Autokey (הקצאת מקשים אוטומטית), לוחצים על Manage (ניהול).
- לוחצים על Configure (הגדרה).
- בשדה מקור ההגדרה, בוחרים באפשרות הגדרה לפרויקט.
- בקטע הגדרה, בוחרים באפשרות הפעלת אחסון מפתחות באותו פרויקט.
לוחצים על שליחה.
תופיע הודעה שתאשר שהתכונה Cloud KMS Autokey מופעלת בפרויקט.
gcloud
יוצרים קובץ YAML שמכיל את הפרטים הבאים
AutokeyConfig:name: projects/PROJECT_ID/autokeyConfig keyProjectResolutionMode: RESOURCE_PROJECT keyProject:מחליפים את
PROJECT_IDבמזהה של הפרויקט שבו רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט.מחילים את
AutokeyConfigעל הפרויקט:gcloud kms autokey-config update AUTOKEY_CONFIG_PATHמחליפים את AUTOKEY_CONFIG_PATH בנתיב לקובץ YAML שיצרתם בשלב הקודם.
מפעילים את Cloud KMS API בפרויקט:
gcloud services enable cloudkms.googleapis.com
REST
באמצעות API בארכיטקטורת REST, יוצרים את
AutokeyConfigלפרויקט שבו רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/autokeyConfig?updateMask=keyProjectResolutionMode,keyProject" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"keyProjectResolutionMode": "RESOURCE_PROJECT", "keyProject": ""}'מחליפים את
PROJECT_IDבמזהה הפרויקט שבו רוצים להפעיל את Autokey.ב-CLI של gcloud, מפעילים את Cloud KMS API בפרויקט:
gcloud services enable cloudkms.googleapis.com
Terraform
כדי להפעיל את Autokey עם אחסון מפתחות באותו פרויקט בפרויקט ספציפי, משתמשים במשאב autokey_config_project שדומה לזה:
/* To set autokey config for a project */
resource "google_kms_autokey_config" "autokey_config_project" {
provider = google-beta
project = "projects/${google_project.key_management_project.project_id}"
key_project_resolution_mode = "RESOURCE_PROJECT"
# For project scope, valid values are RESOURCE_PROJECT or DISABLED
}
כדי להפעיל את Autokey עם אחסון מפתחות באותו פרויקט לכל הפרויקטים בתיקייה, מבצעים את השלבים הבאים:
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בכלי לבחירת ההקשר, בוחרים את התיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט.
- לוחצים על Configure (הגדרה).
- בקטע מקור ההגדרה, בוחרים באפשרות הגדרה לתיקייה.
- בקטע הגדרה, בוחרים באפשרות הפעלת אחסון מפתחות באותו פרויקט.
לוחצים על שליחה.
תופיע הודעה שתאשר שהתכונה Cloud KMS Autokey מופעלת בתיקייה.
gcloud
יוצרים קובץ YAML שמכיל את הפרטים הבאים
AutokeyConfig:name: folders/FOLDER_NUMBER/autokeyConfig keyProjectResolutionMode: RESOURCE_PROJECT keyProject:מחליפים את
FOLDER_NUMBERבמספר התיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט.מחילים את
AutokeyConfigעל התיקייה:gcloud kms autokey-config update AUTOKEY_CONFIG_PATHמחליפים את AUTOKEY_CONFIG_PATH בנתיב לקובץ YAML שיצרתם בשלב הקודם.
REST
באמצעות API בארכיטקטורת REST, יוצרים את
AutokeyConfigלתיקייה שבה רוצים להפעיל את Autokey עם אחסון מפתחות באותו פרויקט:curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/autokeyConfig?updateMask=keyProjectResolutionMode,keyProject" \ --request "PATCH" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --data '{"keyProjectResolutionMode": "RESOURCE_PROJECT", "keyProject": ""}'מחליפים את
FOLDER_IDבמזהה התיקייה שבה רוצים להפעיל את Autokey. הפקודה הזו מפעילה את Autokey עם אחסון מפתחות באותו פרויקט לכל הפרויקטים בתיקייה.ב-CLI של gcloud, מפעילים את Cloud KMS API בכל פרויקט שבו רוצים להשתמש ב-Autokey עם אחסון מפתחות באותו פרויקט:
gcloud services enable cloudkms.googleapis.comאפשר להפעיל את Cloud KMS API בכל הפרויקטים בבת אחת, או להפעיל את ה-API בפרויקטים ספציפיים לפי הצורך. המפתחים לא יכולים להשתמש ב-Autokey בפרויקט עד שמפעילים את Cloud KMS API בפרויקט הזה.
Terraform
כדי להפעיל את Autokey עם אחסון מפתחות באותו פרויקט בכל הפרויקטים בתיקייה, משתמשים במשאב folder_config שדומה לזה:
/* Enable AutokeyConfig on a folder */
resource "google_kms_autokey_config" "folder_config" {
provider = google-beta
folder = google_folder.autokey_folder.name
key_project_resolution_mode = "RESOURCE_PROJECT"
/* For folder scope, valid values are DEDICATED_KEY_PROJECT,
RESOURCE_PROJECT, or DISABLED. With DEDICATED_KEY_PROJECT, define the
key_project as well. With RESOURCE_PROJECT, omit key_project. Keys will
be created in the same project as the protected resource. */
}
ניקוי ההגדרות של Autokey
אפשר לנקות את הגדרת המפתחות האוטומטיים בתיקייה או בפרויקט כדי לחזור להשתמש בהגדרה של תיקיית האב.
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בתפריט לבחירת הקשר, בוחרים את התיקייה או הפרויקט שבהם רוצים לנקות את הגדרת Autokey.
- בקטע Autokey (הקצאת מקשים אוטומטית), לוחצים על Manage (ניהול).
- לוחצים על Configure (הגדרה).
- בשדה מקור ההגדרה, בוחרים באפשרות העברה בירושה.
- לוחצים על שליחה.
gcloud
יוצרים קובץ YAML שמכיל את הפרטים הבאים
AutokeyConfig:name: RESOURCE_TYPE/RESOURCE_ID/autokeyConfig keyProjectResolutionMode: KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED keyProject:מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_TYPE: סוג המשאב שבו רוצים לנקות את הגדרת המפתח האוטומטי. מגדירים את הערךfoldersאוprojects. -
RESOURCE_ID: המזהה של התיקייה שבה רוצים לנקות את התצורה של Autokey.
-
מחילים את
AutokeyConfigעל התיקייה או הפרויקט:gcloud kms autokey-config update AUTOKEY_CONFIG_PATHמחליפים את AUTOKEY_CONFIG_PATH בנתיב לקובץ YAML שיצרתם בשלב הקודם.
REST
מבטלים את הסימון של AutokeyConfig בתיקייה או בפרויקט שבהם רוצים לחזור להגדרת Autokey שעברה בירושה:
curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/autokeyConfig?updateMask:keyProjectResolutionMode,keyProject" \
--request "PATCH" \
--header "authorization: Bearer TOKEN" \
--header "content-type: application/json" \
--data '{"keyProjectResolutionMode": "KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED", "keyProject": ""}'
מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_TYPE: סוג המשאב שבו רוצים להשבית את Autokey. מגדירים את הערך ל-foldersאו ל-projects. -
RESOURCE_ID: המזהה של התיקייה שבה רוצים להשבית את Autokey עם אחסון מפתחות באותו פרויקט.
Terraform
# Clear AutokeyConfig for the folder
resource "google_kms_autokey_config" "autokey_config" {
provider = google-beta
folder = google_folder.autokey_folder.folder_id
key_project = ""
key_project_resolution_mode = "KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED"
}
צפייה בהגדרות האפקטיביות של Autokey
אפשר לראות את ההגדרה האפקטיבית של Autokey בתיקייה או בפרויקט. ההגדרות האפקטיביות של Autokey מראות לכם את הפרטים הבאים:
- אם Autokey מופעל במשאב שנבחר.
- אם Autokey מופעל, האם המשאב שנבחר משתמש באחסון מפתחות של פרויקט ייעודי או באחסון מפתחות של אותו פרויקט.
- אם המשאב שנבחר משתמש באחסון מפתחות בפרויקט ייעודי, מזהה המשאב של פרויקט המפתחות הייעודי.
האם ההגדרה הזו של Autokey עוברת בירושה מתיקיית אב או מוגדרת במשאב שנבחר.
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בתפריט לבחירת הקשר, בוחרים את התיקייה או הפרויקט שבהם רוצים לראות את ההגדרות של Autokey.
- בקטע Autokey (הקצאת מקשים אוטומטית), לוחצים על Manage (ניהול).
gcloud
הצגת התאריך שבו המבצע בתוקף AutokeyConfig:
gcloud kms autokey-config show-effective-config \
--RESOURCE_TYPE=RESOURCE_ID
מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_TYPE: סוג המשאב שרוצים להציג בו את ההגדרה האפקטיבית של Autokey. ההגדרה היאfolderאוproject. -
RESOURCE_ID: המזהה של המשאב שבו רוצים להציג את תצורת ה-Autokey האפקטיבית.
הפלט אמור להיראות כך:
keyProject: KEY_PROJECT
keyProjectResolutionMode: KEY_PROJECT_RESOLUTION_MODE
source:
name: RESOURCE_IDENTIFIER
הפלט הזה כולל את הערכים הבאים:
-
KEY_PROJECT: מזהה המשאב של פרויקט המפתח, לדוגמה:projects/PROJECT_ID. אם ההגדרה Autokey מושבתת, או אם המשאב הוא תיקייה שבה מופעל אחסון מפתחות באותו פרויקט, השדה הזה לא יופיע. -
KEY_PROJECT_RESOLUTION_MODE:keyProjectResolutionModeשל המשאב. לדוגמה:RESOURCE_PROJECT,DEDICATED_KEY_PROJECTאוDISABLED. אם התכונה Autokey לא מופעלת במשאב או במשאב אב כלשהו, השדה הזה לא יופיע. -
RESOURCE_IDENTIFIER: מזהה המשאב של המשאב שבו מוגדרAutokeyConfig. כך תוכלו לקבוע אם המאפייןAutokeyConfigעובר בירושה ממשאב אב או מוגדר במשאב ששלחתם לגביו שאילתה.
REST
כדי לראות את המדיניות בפועל AutokeyConfig של תיקייה או פרויקט:
curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:showEffectiveAutokeyConfig" \
--request "GET" \
--header "authorization: Bearer TOKEN"
```
Replace the following:
-
RESOURCE_TYPE: סוג המשאב שרוצים להציג את ההגדרה של Autokey. ההגדרה היאfoldersאוprojects. RESOURCE_ID: המזהה של המשאב שבו רוצים להציג את ההגדרה של Autokey.
הפלט אמור להיראות כך:
{
"keyProject": KEY_PROJECT,
"keyProjectResolutionMode": KEY_PROJECT_RESOLUTION_MODE,
"source": {
RESOURCE_IDENTIFIER
}
}
הפלט הזה כולל את הערכים הבאים:
-
KEY_PROJECT: מזהה המשאב של פרויקט המפתח, לדוגמה:projects/PROJECT_ID. אם Autokey מושבת, או אם המשאב הוא תיקייה שבה מופעל אחסון מפתחות באותו פרויקט, השדה הזה לא יופיע. -
KEY_PROJECT_RESOLUTION_MODE:keyProjectResolutionModeשל המשאב. לדוגמה:RESOURCE_PROJECT,DEDICATED_KEY_PROJECTאוDISABLED. אם התכונה Autokey לא מופעלת במשאב או במשאב אב כלשהו, השדה הזה לא יופיע. -
RESOURCE_IDENTIFIER: מזהה המשאב של המשאב שבו מוגדרAutokeyConfig. כך תוכלו לקבוע אם המאפייןAutokeyConfigעובר בירושה ממשאב אב או מוגדר במשאב ששלחתם לגביו שאילתה.
SQL
אתם יכולים להשתמש בשאילתת SQL עם מאגר משאבי ענן כדי להעריך את ההגדרה האפקטיבית של Autokey לכל הפרויקטים בתיקייה או בארגון.
מגדירים משתני סביבה של bash למזהה הארגון ולטווח החיפוש.
export ORG_ID="ORGANIZATION_ID" export TARGET_SCOPE="RESOURCE_TYPE/RESOURCE_ID"מחליפים את מה שכתוב בשדות הבאים:
-
ORGANIZATION_ID: המזהה המספרי של הארגון. -
RESOURCE_TYPE: סוג המשאב שבו רוצים להציג את ההגדרות האפקטיביות של Autokey. הערךorganizationsמאפשר לראות את ההגדרות של כל הפרויקטים בארגון, והערךfoldersמאפשר לראות את ההגדרות של כל הפרויקטים בתיקייה ספציפית. -
RESOURCE_ID: המזהה המספרי של הארגון או התיקייה שבהם רוצים לראות את ההגדרות האפקטיביות של Autokey.
-
משתמשים בפקודה
gcloud asset queryכדי להריץ את השאילתה.gcloud asset query \ --organization="${ORG_ID}" \ --statement=" WITH ProjectConfigs AS ( SELECT p.name AS project_name, ARRAY_AGG( STRUCT( ancestor AS config_source, c.resource.data.state AS state, c.resource.data.keyProjectResolutionMode AS resolution_mode, c.resource.data.keyProject AS key_project ) ORDER BY offset LIMIT 1 )[SAFE_OFFSET(0)] AS effective_config FROM STANDARD_METADATA p CROSS JOIN UNNEST(p.ancestors) AS ancestor WITH OFFSET AS offset JOIN cloudkms_googleapis_com_AutokeyConfig c ON ancestor = REGEXP_REPLACE(c.name, r'^//cloudkms\.googleapis\.com/([^/]+/\d+)/autokeyConfig$', r'\1') WHERE p.assetType = 'cloudresourcemanager.googleapis.com/Project' GROUP BY p.name ) SELECT REPLACE(r.name, '//cloudresourcemanager.googleapis.com/', '') AS project_name, p.resource.data.projectId AS project_id, COALESCE(rc.effective_config.config_source, 'No Autokey') AS effective_config_source, rc.effective_config.state AS autokey_config_state, rc.effective_config.resolution_mode AS resolution_mode, CASE WHEN rc.effective_config.resolution_mode = 'RESOURCE_PROJECT' THEN p.resource.data.projectId ELSE COALESCE(REPLACE(rc.effective_config.key_project, 'projects/', ''), 'No Key Project') END AS key_project FROM STANDARD_METADATA r LEFT JOIN ProjectConfigs rc ON r.name = rc.project_name LEFT JOIN cloudresourcemanager_googleapis_com_Project p ON r.name = p.name WHERE r.assetType = 'cloudresourcemanager.googleapis.com/Project' AND '${TARGET_SCOPE}' IN UNNEST(r.ancestors) "הפלט כולל את השדות הבאים:
-
project_number: מזהה המשאב המספרי המלא של כל פרויקט, לדוגמה:projects/PROJECT_NUMBER. -
project_id: המזהה של כל פרויקט. לדוגמה:PROJECT_ID. -
effective_config_source: מזהה המשאב של המשאב שבו מוגדרת תצורת Autokey של הפרויקט. לדוגמה,folders/FOLDER_NUMBERאם התצורה עוברת בירושה מתיקיית אב, אוprojects/PROJECT_NUMBERאם התצורה מוגדרת בפרויקט. אם לפרויקט איןAutokeyConfigאו שהוא לא מקבל אותו בירושה, בשדה הזה יופיע הערךNo Autokey. -
autokey_config_state: מציין אם הגדרת AutokeyACTIVEבתיקייה, גם אם ההגדרהDISABLED. אם לפרויקט איןAutokeyConfigאו שהוא לא מקבל אותו בירושה, השדה הזה ריק. -
resolution_mode: מצב ההחלטה של פרויקט המפתח של הגדרת Autokey האפקטיבית בפרויקט. -
key_project: מציין איפה Autokey יוצר מפתחות למשאבים בפרויקט – לדוגמה,projects/KEY_PROJECT_IDאם הפרויקט משתמש באחסון מפתחות בפרויקט ייעודי אוRESOURCE_PROJECT_IDאם הפרויקט משתמש באחסון מפתחות באותו פרויקט. אם התכונה Autokey לא מופעלת בפרויקט, בשדה הזה מוצג הערךNo key project.
-
השבתת התכונה 'הקלדה אוטומטית'
אותם תפקידים שיכולים להפעיל את Autokey יכולים גם להשבית אותו. כדי להשבית את Autokey, אפשר לבטל את הסימון של AutokeyConfig או להגדיר את feedbackKeyProjectResolutionMode ל-DISABLED. אפשר להשבית את Autokey בתיקייה או בפרויקט. אפשר גם להשבית את Autokey בפרויקטים ספציפיים בתיקייה שבה Autokey מופעל.
אחרי שמשביתים את Autokey בתיקייה או בפרויקט, סוכן השירות של Cloud KMS לא יכול יותר ליצור מפתחות למפתחים כשהם יוצרים משאבים בתיקייה או בפרויקט האלה.
אם רוצים להשבית לגמרי את Autokey, מומלץ גם להסיר את הקישורים של IAM לתפקידים roles/cloudkms.autokeyAdmin ו-roles/cloudkms.autokeyUser.
השבתת Autokey לא משפיעה על מפתחות קיימים בפרויקט המפתחות. אתם יכולים להמשיך להשתמש במפתחות האלה כדי להגן על המשאבים שלכם.
השבתת Autokey לתיקייה או לפרויקט
המסוף
-
נכנסים לדף Key management controls במסוף Google Cloud .
- בתפריט לבחירת הקשר, בוחרים את התיקייה או הפרויקט שבהם רוצים להשבית את התכונה 'הקצאת מקשי קיצור אוטומטית'.
- בקטע Autokey (הקצאת מקשים אוטומטית), לוחצים על Manage (ניהול).
- לוחצים על Configure (הגדרה).
- בקטע מקור ההגדרה, בוחרים באפשרות הגדרה לתיקייה או הגדרה לפרויקט.
- בקטע Configuration (הגדרה), בוחרים באפשרות Disable autokey for folder (השבתת מפתח אוטומטי לתיקייה) או באפשרות Disable autokey for project (השבתת מפתח אוטומטי לפרויקט).
לוחצים על שליחה.
תוצג הודעה שבה תתבקשו לאשר שאתם רוצים להשבית את Autokey.
כדי להשבית את Autokey, לוחצים על אישור.
תופיע הודעה שמאשרת שהתכונה 'מפתח אוטומטי' ב-Cloud KMS מושבתת.
gcloud
יוצרים קובץ YAML שמכיל את הפרטים הבאים
AutokeyConfig:name: RESOURCE_TYPE/RESOURCE_ID/autokeyConfig keyProjectResolutionMode: DISABLED keyProject:מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_TYPE: סוג המשאב שבו רוצים להשבית את Autokey. מגדירים את הערך ל-foldersאו ל-projects. -
RESOURCE_ID: המזהה של התיקייה שבה רוצים להשבית את Autokey עם אחסון מפתחות באותו פרויקט.
-
מחילים את
AutokeyConfigעל התיקייה או הפרויקט:gcloud kms autokey-config update AUTOKEY_CONFIG_PATHמחליפים את AUTOKEY_CONFIG_PATH בנתיב לקובץ YAML שיצרתם בשלב הקודם.
REST
מעדכנים את AutokeyConfig בתיקייה או בפרויקט שבהם רוצים להשבית את Autokey:
curl "https://cloudkms.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/autokeyConfig?updateMask:keyProjectResolutionMode,keyProject" \
--request "PATCH" \
--header "authorization: Bearer TOKEN" \
--header "content-type: application/json" \
--data '{"keyProjectResolutionMode": "DISABLED", "keyProject": ""}'
מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_TYPE: סוג המשאב שבו רוצים להשבית את Autokey. מגדירים את הערך ל-foldersאו ל-projects. -
RESOURCE_ID: המזהה של התיקייה שבה רוצים להשבית את Autokey עם אחסון מפתחות באותו פרויקט.
Terraform
# Clear AutokeyConfig for the folder
resource "google_kms_autokey_config" "autokey_config" {
provider = google-beta
folder = google_folder.autokey_folder.folder_id
key_project = ""
key_project_resolution_mode = "DISABLED"
}
ביטול תפקידים ב-Autokey
השבתת Autokey על ידי עדכון AutokeyConfig מונעת מסוכן השירות של Cloud KMS הקצאה של מפתחות חדשים בפרויקט או בתיקייה המושפעים. עם זאת, אם רוצים להשבית את Autokey באופן מלא, מומלץ גם להסיר את הקישורים של IAM לתפקידים roles/cloudkms.autokeyAdmin ו-roles/cloudkms.autokeyUser.
אופציונלי: ביטול התפקיד
roles/cloudkms.autokeyAdmin:gcloud resource-manager folders remove-iam-policy-binding \ FOLDER_ID --role=roles/cloudkms.autokeyAdmin \ --member=user:USER_EMAILמחליפים את מה שכתוב בשדות הבאים:
-
FOLDER_ID: המזהה של התיקייה שבה השבתתם את Autokey. -
USER_EMAIL: כתובת האימייל של המשתמש שרוצים לבטל את ההרשאה שלו לנהל את Autokey.
-
אופציונלי: ביטול התפקיד
roles/cloudkms.autokeyUserברמת התיקייה:gcloud resource-manager folders remove-iam-policy-binding \ FOLDER_ID --role=roles/cloudkms.autokeyUser \ --member=user:USER_EMAILמחליפים את מה שכתוב בשדות הבאים:
-
FOLDER_ID: המזהה של התיקייה שבה השבתתם את Autokey. -
USER_EMAIL: כתובת האימייל של המשתמש שרוצים לבטל את ההרשאה שלו להשתמש ב-Autokey.
-
אופציונלי: ביטול התפקיד
roles/cloudkms.autokeyUserברמת הפרויקט:gcloud projects remove-iam-policy-binding \ RESOURCE_PROJECT_NUMBER \ --role=roles/cloudkms.autokeyUser \ --member=user:USER_EMAILמחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE_PROJECT_NUMBER: מספר הפרויקט של פרויקט משאבים בתיקייה שבה השבתתם את Autokey. -
USER_EMAIL: כתובת האימייל של המשתמש שרוצים לבטל את ההרשאה שלו להשתמש ב-Autokey.
-
אופציונלי: אם אתם לא מתכננים להמשיך להשתמש בפרויקט המפתח עבור Autokey לתיקיות אחרות, אתם יכולים לבטל את ההרשאה לתפקיד
roles/cloudkms.adminלסוכן השירות של Cloud KMS:gcloud projects remove-iam-policy-binding \ KEY_PROJECT_NUMBER \ --role=roles/cloudkms.admin \ --member=serviceAccount:service-KEY_PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.comמחליפים את הערך
KEY_PROJECT_NUMBERבמזהה המספרי של פרויקט המפתח.אופציונלי: אם אתם לא מתכננים להמשיך להשתמש במפתחות שנוצרו בפרויקט המפתחות, אתם יכולים לבטל את ההרשאה לתפקיד
roles/cloudkms.adminלאדמין של Cloud KMS:gcloud projects remove-iam-policy-binding \ KEY_PROJECT_NUMBER \ --role=roles/cloudkms.admin \ --member=user:KEY_ADMIN_EMAILמחליפים את מה שכתוב בשדות הבאים:
-
KEY_PROJECT_NUMBER: מספר הפרויקט של פרויקט המפתח. -
KEY_ADMIN_EMAIL: כתובת האימייל של המשתמש שרוצים לבטל את ההרשאה שלו להגדיר את Autokey.
-
המאמרים הבאים
- מידע נוסף על המקרים שבהם כדאי להשתמש ב-Autokey
- איך Autokey עובד
- איך שולטים בשימוש ב-Autokey
- מפתחי Autokey יכולים עכשיו ליצור משאבים מוגנים באמצעות Autokey.