Halaman ini menunjukkan cara membuat resource yang dilindungi menggunakan kunci yang dibuat oleh Kunci Otomatis Cloud KMS untuk enkripsi. Untuk mengetahui informasi selengkapnya tentang Tombol otomatis, lihat Ringkasan tombol otomatis.
Sebelum memulai
Sebelum dapat membuat resource yang dilindungi menggunakan Kunci Otomatis, Anda harus menyelesaikan langkah-langkah berikut sebagai persiapan:
- Jika Anda belum memiliki project resource dalam Autokey , maka Anda harus buat project untuk menyimpan resource yang akan dibuat.
-
Untuk mendapatkan izin yang diperlukan, Anda perlu menggunakan {i>Autokey<i} untuk membuat {i> protected<i} minta administrator untuk memberi Anda Peran IAM Cloud KMS Autokey User (
roles/cloudkms.autokeyUser
) di folder atau project. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
- Anda juga memerlukan izin pembuatan resource di folder Autokey atau pada project resource dalam folder. Untuk informasi selengkapnya tentang izin yang diperlukan untuk membuat setiap resource, lihat layanan dokumentasi tambahan. Anda dapat menemukan dokumentasi ini dengan mencari layanan di CMEK tabel integrasi dan membuka link untuk jenis resource yang yang ingin Anda buat.
Menggunakan Autokey dengan resource Compute Engine
Kunci otomatis membuat kunci baru untuk setiap disk, image, dan image mesin di lokasi yang sama dengan resource yang sedang dibuat.
Kunci otomatis tidak membuat kunci baru untuk snapshot. Snapshot harus menggunakan kunci yang sama dengan yang digunakan untuk mengenkripsi {i>disk<i}. Jika Anda membuat snapshot menggunakan Konsol Google Cloud, kunci enkripsi yang digunakan disk akan otomatis yang diterapkan ke snapshot. Jika Anda membuat snapshot menggunakan gcloud CLI, Terraform, atau Cloud KMS API, Anda harus mengidentifikasi kunci yang digunakan untuk mengenkripsi disk dan menggunakan kunci tersebut untuk mengenkripsi snapshot.
Untuk mengetahui informasi selengkapnya tentang penggunaan CMEK dengan snapshot, lihat Membuat snapshot dari disk yang dienkripsi dengan CMEK.
Membuat resource Compute Engine yang terlindungi
Konsol
Untuk membuat disk, selesaikan langkah-langkah berikut:
Di konsol Google Cloud, buka halaman Disk.
Klik Create disk dan masukkan properti untuk disk baru.
Di bagian Enkripsi, pilih Kunci Cloud KMS.
Untuk Key type, pilih Cloud KMS with Autokey, lalu klik Minta kunci baru. Sebuah pesan akan muncul saat kunci Anda telah berhasil dibuat dan siap digunakan.
Untuk menyelesaikan pembuatan disk, klik Create.
Anda dapat mengikuti proses serupa untuk membuat instance, image, dan resource image mesin.
Terraform
Contoh Terraform berikut membuat handle kunci dan menggunakan kunci yang ditampilkan untuk melindungi resource persistent disk baru:
resource "google_kms_key_handle" "my_key_handle" {
provider = google-beta
project = "RESOURCE_PROJECT_ID"
name = "KEY_HANDLE"
location = "LOCATION"
resource_type_selector = "compute.googleapis.com/Disk"
}
resource "google_compute_disk" "persistent_disk" {
project = "RESOURCE_PROJECT_ID"
name = "DISK_NAME"
type = "pd-ssd"
zone = "ZONE"
size = 30
physical_block_size_bytes = 4096
disk_encryption_key {
kms_key_self_link = google_kms_key_handle.my_key_handle.kms_key
}
}
Ganti kode berikut:
RESOURCE_PROJECT_ID
: project ID project resource dalam folder Autokey tempat Anda ingin membuat resource AndaKEY_HANDLE
: ID yang akan digunakan untuk tuas kunci.LOCATION
: lokasi tempat Anda ingin membuat item yang dilindungi resource AndaDISK_NAME
: nama disk baru.ZONE
: zona resource yang dilindungi. Ini harus menjadi zona di dalam lokasi tempat Anda membuat resource. Sebagai misalnya, jika Anda membuat resource di lokasius-central1
, zonanya bisaus-central1-a
.
API
Minta kunci Cloud KMS baru dengan membuat
KeyHandle
:curl -H "Content-Type: application/json" \ -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \ -d '{"resource_type_selector": "RESOURCE_TYPE"}'
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.RESOURCE_TYPE
: jenis resource yang ingin Anda yang Anda buat—misalnya,compute.googleapis.com/Disk
.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata" } }
Catat
OPERATION_ID
dari output. Anda memerlukan nilai ini untuk mendapatkan ID resource kunci yang dibuat.Temukan kunci Cloud KMS yang terkait dengan handle kunci tersebut:
curl -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.OPERATION_ID
: ID permintaan handle kunci operasi dari output langkah sebelumnya.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle", "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE", "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME", "resourceTypeSelector": "RESOURCE_TYPE" } }
Nilai elemen
kmsKey
dalam output adalah ID resource lengkap dari kunci yang dibuat oleh Autokey untuk resource ini. Anda dapat menggunakan ID resource dengan cara yang sama seperti Anda menggunakan ID resource untuk resource Cloud KMS.Buat disk terenkripsi menggunakan
gcloud compute disks create
, dengan Flag--kms-key
:gcloud compute disks create DISK_NAME \ --kms-key projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME
Ganti kode berikut:
DISK_NAME
: nama disk baru.KEY_PROJECT_ID
: project ID dari project kunci.LOCATION
: lokasi tempat Anda ingin membuat resource AndaKEY_NAME
: nama kunci yang ditampilkan dalam output dari ke langkah sebelumnya.
Menggunakan Kunci Otomatis dengan resource Cloud Storage
Kunci otomatis membuat kunci baru di lokasi yang sama dengan bucket. Kuncinya yang dibuat oleh Autokey, ditetapkan sebagai kunci default bucket.
Kunci otomatis tidak membuat kunci untuk objek. Secara {i>default<i}, objek yang dibuat di bucket menggunakan kunci default bucket. Jika Anda ingin mengenkripsi objek menggunakan selain kunci default bucket, Anda dapat membuat CMEK secara manual dan menggunakan kunci tersebut saat membuat objek.
Jika ingin mengubah kunci default yang ditetapkan ke bucket, Anda dapat menggunakan CMEK yang ada, termasuk kunci yang dibuat dengan {i>Autokey<i}.
Membuat resource Cloud Storage yang terlindungi
Konsol
Di konsol Google Cloud, buka halaman Create a bucket.
Ikuti petunjuk untuk Membuat bucket baru hingga Anda sampai di bagian Choose how to protection object data.
Di bagian Choose how to protection object data, luaskan Data enkripsi, lalu pilih kunci Cloud KMS.
Untuk Key type, pilih Cloud KMS with Autokey, lalu klik Minta kunci baru. Sebuah pesan akan muncul saat kunci Anda telah berhasil dibuat dan siap digunakan.
Untuk menyelesaikan pembuatan bucket, klik Create.
Terraform
Contoh Terraform berikut membuat handle kunci dan menggunakan kunci yang ditampilkan untuk melindungi bucket penyimpanan baru:
resource "google_kms_key_handle" "my_key_handle" {
provider = google-beta
project = "RESOURCE_PROJECT_ID"
name = "KEY_HANDLE"
location = "LOCATION"
resource_type_selector = "storage.googleapis.com/Bucket"
}
resource "google_storage_bucket" "simple_bucket_name" {
name = "BUCKET_NAME"
location = "LOCATION"
force_destroy = true
project = "RESOURCE_PROJECT_ID"
uniform_bucket_level_access = true
encryption {
default_kms_key_name = google_kms_key_handle.my_key_handle.kms_key
}
}
Ganti kode berikut:
RESOURCE_PROJECT_ID
: project ID project resource dalam folder Autokey tempat Anda ingin membuat resource AndaKEY_HANDLE
: ID yang akan digunakan untuk tuas kunci.LOCATION
: lokasi tempat Anda ingin membuat item yang dilindungi resource AndaBUCKET_NAME
: nama bucket baru.
API
Minta kunci Cloud KMS baru dengan membuat
KeyHandle
:curl -H "Content-Type: application/json" \ -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \ -d '{"resource_type_selector": "RESOURCE_TYPE"}'
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.RESOURCE_TYPE
: jenis resource yang ingin Anda yang Anda buat—misalnya,storage.googleapis.com/Bucket
.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata" } }
Catat
OPERATION_ID
dari output. Anda memerlukannya untuk mendapatkan ID resource kunci yang dibuat.Temukan kunci Cloud KMS yang terkait dengan handle kunci tersebut:
curl -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.OPERATION_ID
: ID permintaan handle kunci operasi dari output langkah sebelumnya.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle", "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE", "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME", "resourceTypeSelector": "RESOURCE_TYPE" } }
Nilai elemen
kmsKey
dalam output adalah ID resource lengkap kunci yang dibuat oleh Autokey untuk resource ini. Anda dapat menggunakan ID resource ini dengan cara yang sama seperti Anda menggunakan ID resource untuk resource Cloud KMS lainnya.Membuat bucket terenkripsi menggunakan
gcloud storage buckets create
, dengan Flag--default-encryption-key
:gcloud storage buckets create gs://BUCKET_NAME \ --location=LOCATION \ --default-encryption-key=projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME
Ganti kode berikut:
BUCKET_NAME
: nama bucket baru. Tujuan nama bucket harus mengikuti persyaratan penamaan bucket.LOCATION
: lokasi tempat Anda ingin membuat direktori VM dengan bucket.KEY_PROJECT_ID
: project ID dari project kunci.LOCATION
: lokasi tempat Anda ingin membuat resource AndaKEY_NAME
: nama kunci yang ditampilkan dalam output dari ke langkah sebelumnya.
Menggunakan Autokey dengan resource BigQuery
Cloud KMS tersedia dalam beberapa edisi BigQuery. Merek memastikan edisi BigQuery yang Anda gunakan kompatibel dengan Cloud KMS sebelum Anda mencoba menggunakan Kunci otomatis untuk melindungi resource BigQuery. Untuk mengetahui informasi selengkapnya tentang BigQuery edisi BigQuery, lihat Memahami edisi BigQuery.
Untuk setiap set data baru, Autokey membuat kunci baru, di lokasi yang sama sebagai resource itu sendiri, yang menjadi kunci default set data.
{i>Autokey<i} tidak membuat kunci untuk tabel, kueri, tabel sementara, atau jaringan. Secara default, resource ini dilindungi oleh kunci default set data. Jika Anda ingin melindungi resource dalam set data menggunakan kunci selain set data Anda dapat membuat CMEK secara manual dan menggunakan kunci tersebut saat membuat resource Anda
Untuk kueri dan tabel sementara yang tidak ada di dalam set data, gunakan project menggunakan kunci default. Gunakan kunci default project yang berbeda untuk setiap lokasi di project yang berisi resource BigQuery. Untuk mengetahui informasi selengkapnya tentang menggunakan kunci default project. Lihat Tetapkan kunci default project.
Untuk informasi selengkapnya tentang menggunakan CMEK dengan BigQuery, lihat Kunci Cloud KMS yang dikelola pelanggan.
Membuat resource BigQuery yang terlindungi
Konsol
Sebelum mencoba membuat set data BigQuery menggunakan Kunci otomatis, pastikan Anda memiliki izin yang diperlukan. Untuk selengkapnya informasi tentang cara membuat set data, lihat Membuat set data.
Di Konsol Google Cloud, buka halaman BigQuery.
Ikuti petunjuk untuk Membuat set data hingga Anda akan membuka Opsi lanjutan > Enkripsi.
Di bagian Enkripsi, pilih Kunci Cloud KMS.
Untuk Key type, pilih Cloud KMS with Autokey, lalu klik Minta kunci baru. Sebuah pesan akan muncul saat kunci Anda telah berhasil dibuat dan siap digunakan.
Untuk menyelesaikan pembuatan set data, klik Create dataset.
Terraform
Contoh Terraform berikut membuat handle kunci dan menggunakan kunci yang ditampilkan untuk melindungi set data baru:
resource "google_kms_key_handle" "my_key_handle" {
provider = google-beta
project = "RESOURCE_PROJECT_ID"
name = "test-key-handle"
location = "LOCATION"
resource_type_selector = "bigquery.googleapis.com/Dataset"
}
resource "google_bigquery_dataset" "dataset" {
project = "RESOURCE_PROJECT_ID"
dataset_id = "DATASET_ID"
friendly_name = "DATASET_NAME"
description = "DATASET_DESCRIPTION"
location = "LOCATION"
default_table_expiration_ms = 3600000
default_encryption_configuration {
kms_key_name = google_kms_key_handle.my_key_handle.kms_key
}
}
Ganti kode berikut:
RESOURCE_PROJECT_ID
: project ID untuk project resource dalam folder Autokey tempat Anda ingin membuat resource AndaLOCATION
: lokasi tempat Anda ingin membuat item yang dilindungi resource AndaDATASET_ID
: ID yang akan digunakan untuk set data baru.DATASET_NAME
: nama yang mudah dipahami manusia {i>dataset<i} aslinya.DATASET_DESCRIPTION
: deskripsi untuk yang baru {i>dataset<i} aslinya.
API
Minta kunci Cloud KMS baru dengan membuat
KeyHandle
:curl -H "Content-Type: application/json" \ -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \ -d '{"resource_type_selector": "RESOURCE_TYPE"}'
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.RESOURCE_TYPE
: jenis resource yang ingin Anda yang Anda buat—misalnya,bigquery.googleapis.com/Dataset
.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata" } }
Catat
OPERATION_ID
dari output. Anda memerlukannya untuk mendapatkan ID resource kunci yang dibuat.Temukan kunci Cloud KMS yang terkait dengan handle kunci tersebut:
curl -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.OPERATION_ID
: ID permintaan handle kunci operasi dari output langkah sebelumnya.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle", "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE", "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME", "resourceTypeSelector": "RESOURCE_TYPE" } }
Nilai elemen
kmsKey
dalam output adalah ID resource lengkap kunci yang dibuat oleh Autokey untuk resource ini. Anda dapat menggunakan ID resource ini dengan cara yang sama seperti Anda menggunakan ID resource untuk resource Cloud KMS lainnya.Membuat set data terenkripsi menggunakan
bq mk
, dengan tanda--destination_kms_key
.bq --location=LOCATION mk \ --dataset \ --default_kms_key=projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME \ --default_table_expiration=TABLE_EXPIRATION \ --description="DATASET_DESCRIPTION" \ RESOURCE_PROJECT_ID:DATASET_ID
Ganti kode berikut:
LOCATION
: lokasi tempat Anda ingin membuat {i>dataset<i} aslinya.KEY_PROJECT_ID
: project ID dari project kunci.KEY_NAME
: nama kunci yang ditampilkan dalam output dari ke langkah sebelumnya.TABLE_EXPIRATION
: masa aktif default untuk dalam {i>dataset<i} ini, dalam hitungan detik.DATASET_DESCRIPTION
: deskripsi untuk yang baru {i>dataset<i} aslinya.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.DATASET_ID
: ID set data yang Anda membuat.
Untuk informasi selengkapnya tentang alat
bq
, lihat Menjelajahi bq alat command line.
Menggunakan Autokey dengan resource Secret Manager
Kunci otomatis membuat satu kunci untuk melindungi semua secret dalam project yang sama dan lokasi. Saat kunci dirotasi, rahasia baru yang ditambahkan ke project akan menggunakan kunci versi utama.
Secret Manager hanya kompatibel dengan Kunci Otomatis Cloud KMS jika membuat resource menggunakan Terraform atau REST API.
Membuat resource Secret Manager yang dilindungi
Terraform
Contoh Terraform berikut membuat handle kunci dan menggunakan kunci yang ditampilkan untuk melindungi secret baru dengan replikasi otomatis:
resource "google_kms_key_handle" "my_key_handle" {
provider = google-beta
project = "RESOURCE_PROJECT_ID"
name = "test-key-handle"
location = "global"
resource_type_selector = "secretmanager.googleapis.com/Secret"
}
resource "google_secret_manager_secret" "my_secret" {
project = "RESOURCE_PROJECT_ID"
secret_id = "SECRET_ID"
replication {
auto {
customer_managed_encryption {
kms_key_name = google_kms_key_handle.my_key_handle.kms_key
}
}
}
}
Ganti kode berikut:
RESOURCE_PROJECT_ID
: project ID untuk project resource dalam folder Autokey tempat Anda ingin membuat resource AndaSECRET_ID
: ID yang akan digunakan untuk secret baru.
Jika Anda mencoba membuat {i>key handle<i}
untuk suatu rahasia dalam proyek yang sama dan
lokasi di mana {i>key handle <i}sudah ada, pesan {i>error<i} akan mengembalikan
detail dari {i>key handle <i}yang ada. Jika ini terjadi, pastikan bahwa Anda hanya
memiliki satu blok yang
membuat {i>key handle<i}. Anda dapat menggunakan kembali
{i>key handle <i}menggunakan
ID-nya (KEY_HANDLE
) untuk membuat secret tambahan yang seharusnya
berbagi kunci.
API
Minta kunci Cloud KMS baru dengan membuat
KeyHandle
:curl -H "Content-Type: application/json" \ -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \ -d '{"resource_type_selector": "RESOURCE_TYPE"}'
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.RESOURCE_TYPE
: jenis resource yang ingin Anda yang Anda buat—misalnya,secretmanager.googleapis.com/Secret
.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata" } }
Catat
OPERATION_ID
dari output. Anda memerlukannya untuk mendapatkan ID resource kunci yang dibuat.Jika Anda mencoba membuat handle kunci untuk secret dalam project yang sama dan lokasi di mana {i>key handle<i} sudah ada, maka pesan {i>error<i} mengembalikan detail {i>key handle<i} yang ada. Dalam kasus ini, lewati langkah berikutnya dan gunakan ID resource kunci di kolom
existingKmsKey
untuk melindungi secret baru Anda.Temukan kunci Cloud KMS yang terkait dengan handle kunci tersebut:
curl -H "X-Goog-User-Project: USER_PROJECT" \ -H "Authorization: Bearer TOKEN" \ -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Ganti kode berikut:
USER_PROJECT
: project yang akan ditagih dengan biaya yang terkait dengan permintaan ini.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.LOCATION
: lokasi tempat Anda ingin membuat resource yang dilindungi.OPERATION_ID
: ID permintaan handle kunci operasi dari output langkah sebelumnya.
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle", "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE", "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME", "resourceTypeSelector": "RESOURCE_TYPE" } }
Nilai elemen
kmsKey
dalam output adalah ID resource lengkap kunci yang dibuat oleh Autokey untuk resource ini. Anda dapat menggunakan ID resource ini dengan cara yang sama seperti Anda menggunakan ID resource untuk resource Cloud KMS lainnya.Membuat secret terenkripsi dengan replikasi otomatis menggunakan Perintah
gcloud secrets create
, dengan flag--kms-key-name
.gcloud secrets create "SECRET_ID" \ --replication-policy "automatic" \ --kms-key-name "projects/KEY_PROJECT_ID/locations/global/keyRings/autokey/cryptoKeys/KEY_NAME" \ --project "RESOURCE_PROJECT_ID"
Ganti kode berikut:
SECRET_ID
: ID yang akan digunakan untuk secret baru.KEY_PROJECT_ID
: project ID dari project kunci.KEY_NAME
: nama kunci yang ditampilkan dalam output dari ke langkah sebelumnya.RESOURCE_PROJECT_ID
: project ID resource project dalam folder Autokey tempat Anda ingin membuat resource yang dilindungi.
Langkah selanjutnya
- Pelajari lebih lanjut kapan harus menggunakan Kunci otomatis.
- Pelajari lebih lanjut cara kerja Kunci otomatis.