Secara default, Eventarc mengenkripsi konten pelanggan dalam penyimpanan. Eventarc menangani enkripsi untuk Anda tanpa tindakan tambahan dari Anda. Opsi ini disebut Enkripsi default Google.
Jika ingin mengontrol kunci enkripsi, Anda dapat menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) di Cloud KMS dengan layanan yang terintegrasi dengan CMEK, termasuk Eventarc. Dengan menggunakan kunci Cloud KMS, Anda dapat mengontrol tingkat perlindungan, lokasi, jadwal rotasi, izin penggunaan dan akses, serta batasan kriptografisnya. Dengan Cloud KMS, Anda juga dapat melihat log audit dan mengontrol siklus proses kunci. Bukan Google yang memiliki dan mengelola kunci enkripsi kunci (KEK) simetris yang melindungi data Anda. Andalah yang mengontrol dan mengelola kunci ini di Cloud KMS.
Setelah Anda menyiapkan resource dengan CMEK, pengalaman mengakses resource Eventarc Anda akan serupa dengan menggunakan enkripsi default Google. Untuk mengetahui informasi selengkapnya tentang opsi enkripsi, lihat Kunci enkripsi yang dikelola pelanggan (CMEK).
Kunci enkripsi yang dikelola pelanggan disimpan sebagai kunci software, dalam cluster Cloud HSM, atau secara eksternal menggunakan Cloud External Key Manager.
Cloud KMS menghasilkan log audit saat kunci diaktifkan, dinonaktifkan, atau digunakan oleh resource Eventarc Advanced untuk mengenkripsi dan mendekripsi pesan. Untuk mengetahui informasi selengkapnya, lihat Informasi logging audit Cloud KMS.
Yang dilindungi oleh CMEK
Anda dapat mengonfigurasi CMEK untuk saluran yang digunakan Eventarc Standard dan mengenkripsi peristiwa yang melewati saluran tersebut. Mengaktifkan channel dengan CMEK akan melindungi data yang terkait dengannya menggunakan kunci enkripsi yang hanya dapat diakses oleh Anda.
Saat Anda mengaktifkan CMEK untuk saluran Google di Google Cloud project, semua pemicu Eventarc Standard untuk jenis peristiwa Google di project dan region tersebut akan dienkripsi sepenuhnya dengan kunci CMEK tersebut. Kunci CMEK tidak dapat diterapkan per pemicu.
Sebelum memulai
Sebelum menggunakan fitur ini di Eventarc, Anda harus:
Konsol
-
Aktifkan Cloud KMS dan Eventarc API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran. - Buat key ring.
- Buat kunci untuk key ring tertentu.
gcloud
- Perbarui komponen
gcloud.gcloud components update
- Aktifkan Cloud KMS dan Eventarc API untuk project yang akan menyimpan kunci enkripsi Anda.
gcloud services enable cloudkms.googleapis.com eventarc.googleapis.com
- Buat key ring.
- Buat kunci untuk key ring tertentu.
Untuk mengetahui informasi tentang semua flag dan kemungkinan nilai, jalankan perintah dengan flag --help.
Terraform
Aktifkan Cloud KMS API dan Eventarc API untuk project yang akan menyimpan kunci enkripsi Anda dengan mengonfigurasi resource
google_project_service:Buat key ring dan kunci dengan mengonfigurasi
google_kms_key_ringdangoogle_kms_crypto_keyresource:
Untuk mengetahui informasi selengkapnya tentang cara menggunakan Terraform, lihat dokumentasi Terraform di Google Cloud.
Perhatikan bahwa Cloud KMS dan Eventarc adalah layanan regional. Region untuk kunci Cloud KMS dan channel Eventarc yang dilindungi harus sama.
Memberi akun layanan Eventarc akses ke kunci
Untuk memberi akun layanan Eventarc akses ke kunci Cloud KMS, tambahkan akun layanan sebagai principal kunci, dan berikan peran Cloud KMS CryptoKey Encrypter/Decrypter ke akun layanan tersebut:
Konsol
Saat mengaktifkan CMEK untuk saluran Google atau pihak ketiga melalui konsol, Anda akan diminta untuk memberikan peran Cloud KMS CryptoKey Encrypter/Decrypter ke akun layanan. Untuk mengetahui informasi selengkapnya, dalam dokumen ini, lihat Mengaktifkan CMEK untuk jenis peristiwa Google atau Mengaktifkan CMEK untuk saluran peristiwa pihak ketiga.
gcloud
gcloud kms keys add-iam-policy-binding KEY_NAME \ --keyring RING_NAME \ --location LOCATION \ --member serviceAccount:SERVICE_AGENT_EMAIL \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter
Ganti kode berikut:
KEY_NAME: nama kunci. Contoh,my-key.RING_NAME: nama key ring. Contoh,my-keyring.LOCATION: lokasi kunci. Contoh,us-central1.SERVICE_AGENT_EMAIL: alamat email akun layanan dengan peraneventarc.serviceAgent.Misalnya,
service-PROJECT_NUMBER@gcp-sa-eventarc.iam.gserviceaccount.com. Untuk mengetahui informasi selengkapnya, lihat Agen layanan.
Terraform
Buat identitas layanan untuk layanan Eventarc dengan mengonfigurasi resource
google_project_service_identity:Berikan peran Cloud KMS ke akun layanan Eventarc dengan mengonfigurasi resource
google_kms_crypto_key_iam_member:
Mengaktifkan CMEK untuk jenis peristiwa Google
Pemicu Eventarc yang merutekan jenis peristiwa Google memublikasikan peristiwa ke saluran virtual yang disebut sebagai saluran Google yang spesifik per project dan regional. Channel virtual ini tersedia di semua wilayah Eventarc.
Saat Anda mengaktifkan CMEK untuk saluran Google di Google Cloud project, semua pemicu Eventarc untuk jenis peristiwa Google di project dan region tersebut akan dienkripsi sepenuhnya dengan kunci CMEK tersebut. Anda dapat menambahkan beberapa kunci CMEK dan mengaitkan setiap kunci dengan region tertentu untuk channel Google. Kunci CMEK tidak dapat diterapkan per pemicu.
Konsol
Di konsol Google Cloud , buka halaman Eventarc > Channels.
Klik saluran dengan Penyedia Google.
Di halaman Edit channel, centang kotak Gunakan kunci enkripsi yang dikelola pelanggan (CMEK).
Klik Tambahkan kunci enkripsi.
Pilih Region, lalu di daftar CMEK encryption key, pilih key ring yang telah Anda buat untuk region tersebut. Perhatikan bahwa Anda hanya dapat menambahkan satu kunci enkripsi per region untuk channel.
Opsional: Untuk memasukkan nama resource kunci secara manual, di daftar Kunci enkripsi CMEK, klik Tidak melihat kunci Anda? Masukkan nama resource utama, lalu masukkan nama kunci dalam format yang ditentukan.
Jika diminta, berikan peran
cloudkms.cryptoKeyEncrypterDecrypterke akun layanan Eventarc dengan peraneventarc.serviceAgent.Opsional: Klik Tambahkan kunci enkripsi untuk menambahkan key ring lain yang telah Anda buat untuk region yang berbeda.
Klik Simpan.
gcloud
gcloud eventarc google-channels update \ --location=LOCATION \ --crypto-key=KEY
Ganti kode berikut:
LOCATION: region channel Google yang akan dilindungi. Harus cocok dengan lokasi kunci yang digunakan. Perhatikan bahwa Anda hanya dapat menambahkan satu kunci enkripsi per region untuk channel.KEY: nama kunci Cloud KMS yang sepenuhnya memenuhi syarat dalam formatprojects/PROJECT_ID/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME.
Terraform
Aktifkan CMEK untuk resource GoogleChannelConfig dalam project dan lokasi tertentu dengan mengonfigurasi resource google_eventarc_google_channel_config:
REST
Anda dapat memperbarui resource GoogleChannelConfig menggunakan metode
projects.locations.updateGoogleChannelConfig
dan menentukan kunci CMEK untuk project dan lokasi tertentu.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut: