Secara default, Secure Source Manager mengenkripsi konten pelanggan dalam penyimpanan. Secure Source Manager 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 Secure Source Manager. 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 melacak penggunaan kunci, 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 Secure Source Manager Anda akan serupa dengan menggunakan enkripsi default Google. Untuk mengetahui informasi selengkapnya tentang opsi enkripsi, lihat Kunci enkripsi yang dikelola pelanggan (CMEK).
Cloud KMS dapat berjalan dalam project terpisah tempat Anda mengelola kunci secara terpusat untuk beberapa project, atau project yang sama Google Cloud dengan Secure Source Manager. Untuk mendukung pemisahan tugas dan kontrol yang lebih besar atas akses ke kunci, sebaiknya buat dan kelola kunci dalam project terpisah yang tidak menyertakan resource lain Google Cloud.
Anda menetapkan kunci Cloud KMS saat membuat instance. Anda tidak dapat mengubah mekanisme enkripsi instance yang ada. Jika memiliki instance yang dienkripsi CMEK, Anda tidak dapat mengubah mekanisme enkripsi ke enkripsi default Google atau menetapkan kunci Cloud Key Management Service yang berbeda untuk enkripsi.
Instance harus dibuat di lokasi yang sama dengan kunci Cloud KMS.
CMEK dengan Cloud KMS Autokey
Anda dapat membuat CMEK secara manual untuk melindungi resource Secure Source Manager atau menggunakan Cloud KMS Autokey. Dengan Autokey, key ring dan kunci dibuat sesuai permintaan untuk mendukung pembuatan resource di Secure Source Manager. Agen layanan yang menggunakan kunci untuk operasi enkripsi dan dekripsi dibuat jika belum ada dan diberi peran Identity and Access Management (IAM) yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Autokey.
Kuota Cloud KMS dan Secure Source Manager
Saat Anda menggunakan CMEK di Secure Source Manager, project Anda dapat memakai kuota permintaan kriptografis Cloud KMS. Instance yang dienkripsi CMEK menggunakan kuota ini pada waktu pembuatan. Operasi enkripsi dan dekripsi menggunakan kunci CMEK memengaruhi kuota Cloud KMS hanya jika Anda menggunakan kunci hardware (Cloud HSM) atau kunci eksternal (Cloud EKM). Untuk mengetahui informasi selengkapnya, lihat Kuota Cloud KMS.
Membuat kunci CMEK dan memberikan izin
Petunjuk berikut menjelaskan cara membuat kunci dan memberikan izin akun layanan Secure Source Manager pada kunci.
Buat kunci Cloud KMS:
Secara manual
Di Google Cloud project tempat Anda ingin mengelola kunci:
Buat key ring dan kunci menggunakan salah satu opsi berikut:
- Buat key ring dan kunci langsung di Cloud KMS.
- Gunakan kunci yang dikelola secara eksternal. Buat kunci eksternal lalu buat kunci Cloud EKM untuk menyediakan kunci tersebut melalui Cloud KMS.
Lokasi kunci Cloud KMS harus cocok dengan lokasi project tempat Anda ingin membuat instance Secure Source Manager.
Menggunakan Autokey
Jika Anda belum melakukannya, aktifkan Cloud KMS Autokey.
Buat Cloud KMS Autokey
KeyHandlebaru:curl -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -X POST https://cloudkms.googleapis.com/v1/projects/PROJECT/locations/LOCATION/keyHandles \ -d '{"resource_type_selector": "securesourcemanager.googleapis.com/Instance"}'Ganti kode berikut:
- PROJECT: project ID project tempat Cloud KMS Autokey diaktifkan dan tempat Anda ingin men-deploy instance Secure Source Manager
- LOCATION: lokasi
KeyHandle. Lokasi ini harus cocok dengan lokasi tempat Anda ingin men-deploy instance Secure Source Manager
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/PROJECT/locations/LOCATION/operations/OPERATION", "metadata": { "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata" } }Catat OPERATION dari output. Anda memerlukan nilai ini untuk mendapatkan ID resource kunci yang dibuat.
Temukan kunci Cloud KMS yang terkait dengan key handle:
curl -H "X-Goog-User-Project: PROJECT" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -X GET https://cloudkms.googleapis.com/v1/projects/PROJECT/locations/LOCATION/operations/OPERATIONGanti kode berikut:
- PROJECT: project ID project tempat Cloud KMS Autokey diaktifkan dan tempat Anda ingin men-deploy instance Secure Source Manager
- LOCATION: lokasi
KeyHandle. Lokasi ini harus cocok dengan lokasi tempat Anda ingin men-deploy instance Secure Source Manager - OPERATION: ID operasi permintaan key handle dari output langkah sebelumnya
Outputnya mirip dengan hal berikut ini:
{ "name": "projects/PROJECT/locations/LOCATION/operations/OPERATION", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle", "name": "projects/PROJECT/locations/LOCATION/keyHandles/KEY_HANDLE", "kmsKey": "projects/PROJECT/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME", "resourceTypeSelector": "securesourcemanager.googleapis.com/Instance" } }Nilai elemen
kmsKeydalam output adalah ID resource lengkap kunci yang dibuat oleh Cloud KMS Autokey untuk resource ini. Anda dapat menggunakan ID resource ini dengan cara yang sama seperti menggunakan ID resource untuk resource Cloud KMS lainnya.
Jika Anda membuat instance Secure Source Manager pertama di project, Anda harus membuat agen layanan Secure Source Manager secara manual dengan menjalankan perintah berikut:
gcloud beta services identity create \ --service=securesourcemanager.googleapis.com \ --project=PROJECTDengan
PROJECTadalah project ID project tempat Anda akan membuat instance Secure Source Manager.Setelah membuat agen layanan Secure Source Manager, Anda harus memberikan peran Agen Layanan Secure Source Manager (
roles/securesourcemanager.serviceAgent) ke pokokservice-PROJECT-NUMBER@gcp-sa-sourcemanager.iam.gserviceaccount.comatau pembuatan instance akan gagal.Berikan peran IAM Pengenkripsi/Pendekripsi CryptoKey (
roles/cloudkms.cryptoKeyEncrypterDecrypter) ke akun layanan Secure Source Manager. Berikan izin ini pada kunci yang Anda buat.Konsol
Buka halaman Key management.
Pilih key ring yang ingin Anda gunakan, buka halaman Key ring details, lalu pilih kunci yang Anda buat.
Berikan akses ke akun layanan Secure Source Manager:
- Klik ADD PRINCIPLE.
- Tambahkan akun layanan Secure Source Manager. Akun layanan adalah service-PROJECT-NUMBER@gcp-sa-sourcemanager.iam.gserviceaccount.com, dengan PROJECT-NUMBER adalah nomor project dari Google Cloud project tempat Secure Source Manager di aktifkan.
- Di Select a role, pilih Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter.
- Klik SAVE.
Ulangi langkah sebelumnya untuk memberikan akses ke akun yang akan membuat instance Secure Source Manager.
Kembali ke halaman Key management , pilih key ring Anda, lalu buka halaman Key ring details. Kemudian, pilih kunci lagi.
Pilih SHOW INFO PANEL. Anda akan melihat peran di kolom Role/Member.
gcloud
Jalankan perintah berikut untuk memberikan akses ke akun layanan Secure Source Manager:
gcloud kms keys add-iam-policy-binding [--project=PROJECT] \ KEY_NAME --location LOCATION --keyring=KEY_RING \ --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-sourcemanager.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypterGanti kode berikut:
- PROJECT: ID project yang berisi kunci
- KEY_NAME: nama kunci
- LOCATION: lokasi kunci. Lokasi kunci harus cocok dengan lokasi project tempat Anda ingin men-deploy instance Secure Source Manager
- KEY_RING: nama key ring
- PROJECT_NUMBER: nomor project dari Google Cloud project dengan Secure Source Manager diaktifkan
Ulangi langkah sebelumnya untuk memberikan akses ke akun yang akan membuat instance Secure Source Manager.
Untuk mengetahui informasi selengkapnya tentang perintah ini, lihat dokumentasi gcloud kms keys add-iam-policy-binding.
Hapus akses
Ada beberapa cara untuk menghapus akses ke repositori yang dienkripsi CMEK:
- Cabut peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS role dari akun layanan Secure Source Manager menggunakan Google Cloud konsol atau gcloud CLI.
- Nonaktifkan kunci CMEK untuk sementara.
- Hancurkan kunci CMEK secara permanen.
Sebaiknya cabut izin dari akun layanan Secure Source Manager sebelum menonaktifkan atau menghancurkan kunci. Perubahan pada izin akan konsisten dalam hitungan detik, sehingga Anda dapat mengamati dampak dari menonaktifkan atau menghancurkan kunci.
Saat Anda menonaktifkan atau menghancurkan kunci enkripsi untuk instance, Anda akan kehilangan kemampuan untuk melihat atau mengambil data dari instance. Semua data yang disimpan dalam instance menjadi tidak dapat diakses, termasuk histori kode, permintaan pull, dan masalah.
Pengguna dengan peran Secure Source Manager Instance Manager atau peran Instance Owner dapat menghapus instance.
Kebijakan organisasi CMEK
Secure Source Manager mendukung batasan kebijakan organisasi yang dapat mewajibkan perlindungan CMEK.
Kebijakan dapat membatasi CryptoKey Cloud KMS yang dapat digunakan untuk perlindungan CMEK.
Jika Secure Source Manager API berada dalam daftar kebijakan layanan
Denydari batasanconstraints/gcp.restrictNonCmekServices, Secure Source Manager akan menolak pembuatan instance baru yang tidak dilindungi CMEK.Jika
constraints/gcp.restrictCmekCryptoKeyProjectsdikonfigurasi, Secure Source Manager akan membuat instance yang dilindungi CMEK yang dilindungi oleh CryptoKey dari project, folder, atau organisasi yang diizinkan.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi kebijakan organisasi, lihat Kebijakan organisasi CMEK.
Apa langkah selanjutnya?
- Men-deploy instance yang dienkripsi dengan CMEK
- Pelajari CMEK lebih lanjut
- Pelajari lebih lanjut enkripsi default Google
- Pelajari lebih lanjut Cloud KMS Autokey