Kunci enkripsi yang dikelola pelanggan
Secara default, Google Cloud otomatis mengenkripsi data saat dalam penyimpanan menggunakan kunci enkripsi yang dikelola oleh Google. Jika Anda memiliki persyaratan kepatuhan atau peraturan khusus terkait kunci yang melindungi data, Anda dapat menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk instance notebook yang dikelola pengguna.
Halaman ini menjelaskan beberapa manfaat dan keterbatasan tertentu penggunaan CMEK dengan notebook yang dikelola pengguna dan menunjukkan cara mengonfigurasi instance notebook baru yang dikelola pengguna untuk menggunakan CMEK.
Untuk mengetahui informasi tentang CMEK secara umum, termasuk waktu dan alasan mengaktifkannya, lihat Kunci enkripsi yang dikelola pelanggan.
Manfaat CMEK
Secara umum, CMEK paling berguna saat Anda memerlukan kontrol penuh atas kunci yang digunakan untuk mengenkripsi data Anda. Dengan CMEK, Anda dapat mengelola kunci dalam Cloud Key Management Service. Misalnya, Anda dapat merotasi atau menonaktifkan kunci atau menyiapkan jadwal rotasi menggunakan Cloud KMS API.
Saat Anda menjalankan instance notebook yang dikelola pengguna, instance Anda akan berjalan pada mesin virtual (VM) yang dikelola oleh Vertex AI Workbench. Saat Anda mengaktifkan CMEK untuk instance notebook yang dikelola pengguna, Vertex AI Workbench akan menggunakan kunci yang Anda tetapkan, bukan kunci yang dikelola oleh Google, untuk mengenkripsi data pada boot disk VM.
Kunci CMEK tidak mengenkripsi metadata, seperti nama dan region instance, yang terkait dengan instance notebook yang dikelola pengguna Anda. Metadata yang terkait dengan instance notebook yang dikelola pengguna selalu dienkripsi menggunakan mekanisme enkripsi default Google.
Keterbatasan CMEK
Untuk mengurangi latensi dan mencegah kasus di mana resource yang bergantung pada layanan yang tersebar di beberapa domain gagal, Google merekomendasikan agar Anda melindungi instance notebook regional yang dikelola pengguna dengan kunci di lokasi yang sama.
- Anda dapat mengenkripsi instance notebook regional yang dikelola pengguna
menggunakan kunci di lokasi yang sama atau di lokasi global. Misalnya,
Anda dapat mengenkripsi data dalam disk di zona
us-west1-a
menggunakan kunci yang berada dius-west1
atauglobal
. - Anda dapat mengenkripsi instance global menggunakan kunci yang berada di lokasi mana pun.
- Mengonfigurasi CMEK untuk notebook yang dikelola pengguna tidak mengonfigurasi CMEK secara otomatis untuk produk Google Cloud lain yang Anda gunakan. Agar dapat menggunakan CMEK untuk mengenkripsi data di produk Google Cloud lainnya, Anda harus menyelesaikan konfigurasi tambahan.
Mengonfigurasi CMEK untuk instance notebook yang dikelola pengguna
Bagian berikut menjelaskan cara membuat key ring dan kunci di Cloud Key Management Service, memberikan izin bagi pengenkripsi dan pendekripsi akun layanan untuk kunci Anda, serta membuat instance notebook yang dikelola pengguna yang menggunakan CMEK.
Sebelum memulai
Sebaiknya gunakan penyiapan yang mendukung pemisahan tugas. Guna mengonfigurasi CMEK untuk notebook yang dikelola pengguna, Anda dapat menggunakan dua project Google Cloud yang terpisah:
- Project Cloud KMS: project untuk mengelola kunci enkripsi Anda
- Project notebook yang dikelola pengguna: project untuk mengakses instance notebook yang dikelola pengguna dan berinteraksi dengan produk Google Cloud lain yang Anda perlukan untuk kasus penggunaan
Atau, Anda dapat menggunakan satu project Google Cloud. Untuk melakukannya, gunakan project yang sama untuk semua tugas berikut.
Menyiapkan project Cloud KMS
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud KMS API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud KMS API.
Menyiapkan project notebook yang dikelola pengguna
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
Menyiapkan Google Cloud CLI
gcloud CLI diperlukan untuk beberapa langkah di halaman ini dan bersifat opsional untuk orang lain.Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Membuat key ring dan kunci
Saat Anda membuat key ring dan kunci, perhatikan persyaratan berikut:
Saat Anda memilih lokasi key ring, gunakan
global
atau lokasi tempat instance notebook yang dikelola pengguna Anda berada.Pastikan untuk membuat key ring dan kunci di project Cloud KMS Anda.
Untuk membuat key ring dan kunci, lihat Membuat kunci enkripsi simetris.
Memberikan izin kepada notebook yang dikelola pengguna
Agar dapat menggunakan CMEK untuk instance notebook yang dikelola pengguna, Anda harus memberikan izin kepada instance notebook yang dikelola pengguna untuk mengenkripsi dan mendekripsi data menggunakan kunci Anda.
Menentukan akun layanan yang akan digunakan
Notebook yang dikelola pengguna menggunakan akun layanan untuk menjalankan instance notebook yang dikelola pengguna. Akun layanan ini dapat berupa akun layanan Compute Engine default atau akun layanan yang Anda tentukan saat membuat instance.
Jika akun layanan adalah akun layanan Compute Engine default, selesaikan langkah-langkah berikut untuk menemukan alamat email akun layanan tersebut:
Di konsol Google Cloud, buka halaman IAM.
Temukan akun utama dengan nama
Compute Engine default service account
.Catat alamat email untuk akun layanan ini, lalu gunakan dalam langkah-langkah berikut guna memberinya izin untuk mengenkripsi dan mendekripsi data menggunakan kunci Anda.
Memberikan izin kepada akun layanan
Berikan izin menggunakan konsol Google Cloud atau Google Cloud CLI.
Konsol
Di konsol Google Cloud, buka halaman Kunci kriptografis.
Pilih project Cloud KMS Anda.
Klik nama key ring yang Anda buat di Membuat key ring dan kunci. Halaman Detail key ring akan terbuka.
Centang kotak untuk kunci yang Anda buat di Membuat key ring dan kunci. Jika panel info yang dilabeli dengan nama kunci Anda belum terbuka, klik Tampilkan panel info.
Di panel info, klik
Tambah anggota. Dialog Tambah anggota ke "KEY_NAME" akan terbuka. Dalam dialog ini, lakukan hal berikut:Di kolom Anggota baru, masukkan alamat email akun layanan untuk instance Anda.
Di daftar Pilih peran, klik Cloud KMS, lalu pilih peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS.
Klik Simpan.
gcloud
Jalankan perintah berikut:
gcloud kms keys add-iam-policy-binding KEY_NAME \
--keyring=KEY_RING_NAME \
--location=REGION \
--project=KMS_PROJECT_ID \
--member=serviceAccount:SERVICE_ACCOUNT \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Ganti kode berikut:
KEY_NAME
: nama kunci yang Anda buat di Membuat key ring dan kunciKEY_RING_NAME
: key ring yang Anda buat di Membuat key ring dan kunciREGION
: region tempat Anda membuat key ringKMS_PROJECT_ID
: ID project Cloud KMS AndaSERVICE_ACCOUNT
: alamat email akun layanan untuk instance Anda
Membuat instance notebook yang dikelola pengguna dengan CMEK
Setelah memberikan izin kepada instance notebook yang dikelola pengguna untuk mengenkripsi dan mendekripsi data menggunakan kunci, Anda dapat membuat instance notebook yang dikelola pengguna yang mengenkripsi data menggunakan kunci ini.
Contoh berikut menunjukkan cara mengenkripsi dan mendekripsi data menggunakan kunci Anda menggunakan konsol Google Cloud atau gcloud CLI.
Konsol
Untuk membuat instance notebook yang dikelola pengguna dengan kunci enkripsi yang dikelola pelanggan, lakukan langkah-langkah berikut:
Di dalam Konsol Google Cloud, buka halaman User-managed notebooks. Atau buka notebook.new (https://notebook.new) dan lewati langkah berikutnya.
Klik
New notebook, lalu pilih Customize.Di halaman Create a user-managed notebook, berikan informasi berikut untuk instance baru Anda di bagian Details:
- Nama: nama untuk instance baru Anda
- Region: region tempat kunci dan key ring Anda berada
- Zona: zona dalam region yang Anda pilih
Pilih bagian Disk.
Untuk menggunakan kunci enkripsi yang dikelola pelanggan, di bagian Enkripsi, pilih Kunci enkripsi yang dikelola pelanggan (CMEK).
Klik Pilih kunci yang dikelola pelanggan.
- Jika kunci yang dikelola pelanggan yang ingin Anda gunakan ada dalam daftar, pilih kunci tersebut.
Jika kunci yang dikelola pelanggan yang ingin Anda gunakan tidak ada dalam daftar, masukkan ID resource untuk kunci yang dikelola pelanggan. ID resource untuk kunci yang dikelola pelanggan akan terlihat seperti ini:
projects/NOTEBOOKS_PROJECT_NUMBER/locations/global/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Ganti kode berikut:
NOTEBOOKS_PROJECT_NUMBER
: ID project notebook yang dikelola penggunaKEY_RING_NAME
: key ring yang Anda buat di Membuat key ring dan kunciKEY_NAME
: nama kunci yang Anda buat di Membuat key ring dan kunci
Selesaikan dialog pembuatan instance selanjutnya, lalu klik Buat.
Vertex AI Workbench membuat instance notebook yang dikelola pengguna berdasarkan properti yang Anda tentukan dan secara otomatis memulai instance tersebut. Saat instance siap digunakan, Vertex AI Workbench akan mengaktifkan link Buka JupyterLab.
gcloud
Untuk menggunakan gcloud CLI guna membuat instance notebook yang dikelola pengguna dengan
kunci enkripsi yang dikelola pelanggan, jalankan perintah berikut.
Contoh ini mengasumsikan bahwa Anda ingin membuat
instance notebook yang dikelola pengguna dengan jenis mesin n1-standard-1
dan
persistent boot disk standar sebesar 100 GB.
gcloud notebooks instances create notebook-vm-cmek \ --location=REGION \ --vm-image-family=IMAGE_FAMILY \ --vm-image-project=deeplearning-platform-release \ --machine-type="n1-standard-1" \ --boot-disk-type="PD_STANDARD" \ --boot-disk-size=100 \ --kms-key=KEY_NAME \ --kms-project=KMS_PROJECT_ID \ --kms-location=REGION \ --kms-keyring=KEY_RING_NAME \ --disk-encryption=CMEK \ --metadata='proxy-mode=project_editors'
Ganti kode berikut:
REGION
: wilayah tempat Anda membuat key ring dan tempat Anda berencana untuk membuat instance notebook yang dikelola penggunaIMAGE_FAMILY
: kelompok gambar yang ingin Anda gunakan untuk membuat instance notebook yang dikelola penggunaKEY_NAME
: nama kunci yang Anda buat di Membuat key ring dan kunciKMS_PROJECT_ID
: ID project Cloud KMS AndaKEY_RING_NAME
: key ring yang Anda buat di Membuat key ring dan kunci
Langkah berikutnya
- Pelajari lebih lanjut CMEK di Google Cloud
- Pelajari cara menggunakan CMEK dengan produk Google Cloud lainnya