Checkpoint
Create a Cloud Storage bucket.
/ 25
Create a Keyring and Crypto key.
/ 25
Encrypt Your Data with the Cloud KMS key and upload it on the storage bucket.
/ 25
Encrypt multiple files using KMS API and upload to cloud storage.
/ 25
Memulai Cloud KMS
- GSP079
- Ringkasan
- Penyiapan dan persyaratan
- Tugas 1. Membuat bucket Cloud Storage
- Tugas 2. Meninjau data
- Tugas 3. Mengaktifkan Cloud KMS
- Tugas 4. Membuat Keyring dan CryptoKey
- Tugas 5. Mengenkripsi data Anda
- Tugas 6. Mengonfigurasi Izin IAM
- Tugas 7. Mencadangkan data dari command line
- Tugas 8. Melihat Cloud Audit Logs
- Tugas 9. Menguji pengetahuan Anda
- Selamat!
GSP079
Ringkasan
Dalam lab ini, Anda akan mempelajari cara menggunakan beberapa fitur lanjutan dari API Privasi dan Keamanan Google Cloud, termasuk:
- Menyiapkan bucket Cloud Storage yang aman
- Mengelola kunci dan data terenkripsi menggunakan Key Management Service
- Melihat log audit Cloud Storage
Anda akan menggunakan data ringkas dari Enron Corpus, mengenkripsinya, dan memuatnya ke Cloud Storage.
Yang akan Anda pelajari
- Cara mengenkripsi data dan mengelola kunci enkripsi menggunakan Cloud Key Management Service (KMS).
Penyiapan dan persyaratan
Sebelum mengklik tombol Mulai Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer, yang dimulai saat Anda mengklik Start Lab, akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab praktik ini dapat Anda gunakan untuk melakukan sendiri aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran. Di sebelah kiri adalah panel Lab Details dengan info berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account. -
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}} Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}} Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan. -
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Mengaktifkan Cloud Shell
Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.
- Klik Activate Cloud Shell
di bagian atas konsol Google Cloud.
Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke PROJECT_ID Anda. Output berisi baris yang mendeklarasikan PROJECT_ID untuk sesi ini:
gcloud
adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.
- (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
-
Klik Authorize.
-
Output Anda sekarang akan terlihat seperti ini:
Output:
- (Opsional) Anda dapat menampilkan daftar project ID dengan perintah ini:
Output:
Contoh output:
gcloud
yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.
Tugas 1. Membuat bucket Cloud Storage
Agar dapat menyimpan data untuk lab ini, Anda harus membuat bucket Cloud Storage sendiri.
- Pilih nama untuk bucket Cloud Storage Anda, misalnya
-enron_corpus. Untuk mengetahui informasi selengkapnya tentang penamaan bucket, lihat panduan penamaan bucket Cloud Storage. Jalankan perintah berikut di Cloud Shell untuk menetapkan variabel ke nama bucket Anda:
- Sekarang, buat bucket dengan menjalankan perintah berikut:
Menjalankan perintah ini juga akan membantu memverifikasi bahwa Anda sudah menyiapkan klien command line gsutil
dengan benar, memiliki autentikasi yang berfungsi, dan memiliki akses tulis ke project cloud tempat Anda menjalankan operasi.
- Setelah bucket dibuat, lanjutkan ke langkah berikutnya untuk mendownload Enron Corpus.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 2. Meninjau data
Enron Corpus adalah database besar berisikan lebih dari 600.000 email yang dihasilkan oleh 158 karyawan Enron Corporation. Data ini telah disalin ke bucket Cloud Storage gs://enron_emails/
.
- Download salah satu file sumber secara lokal agar Anda dapat melihat isi file sumber tersebut dengan menjalankan:
- Sekarang jalankan
tail
pada file yang telah didownload untuk memastikan teks email ada dalam file tersebut:
Anda akan menerima output berikut:
Output ini akan menampilkan konten file email dalam teks biasa. Ada dua jenis file yang perlu Anda perhatikan: file email dalam teks biasa dan file gambar. Anda dapat menggunakan mekanisme yang sama untuk melihat isi file lainnya.
Tugas 3. Mengaktifkan Cloud KMS
Cloud KMS adalah key management service kriptografis di Google Cloud. Sebelum menggunakan KMS, Anda perlu mengaktifkannya untuk project Anda. Di lab ini, KMS yang telah disediakan seharusnya sudah diaktifkan. Anda dapat memastikannya dengan menggunakan salah satu perintah CLI gcloud
.
- Jalankan perintah berikut dalam sesi Cloud Shell Anda:
Anda tidak akan menerima output apa pun. Cloud KMS sekarang diaktifkan di project Anda.
Tugas 4. Membuat Keyring dan CryptoKey
Agar dapat mengenkripsi data, Anda harus membuat KeyRing dan CryptoKey. KeyRing berguna untuk mengelompokkan kunci. Kunci dapat dikelompokkan menurut lingkungannya (seperti test, staging, dan prod) atau menurut pengelompokan konseptual lainnya. Untuk lab ini, KeyRing Anda akan disebut test
dan CryptoKey Anda akan disebut qwiklab
.
- Jalankan perintah berikut di Cloud Shell untuk menetapkan variabel lingkungan:
- Jalankan perintah
gcloud
untuk membuat KeyRing. Untuk lab ini, Anda akan menggunakan lokasi global, tetapi lokasi ini juga dapat ditetapkan ke region tertentu:
- Selanjutnya, dengan menggunakan KeyRing baru, buat CryptoKey bernama
qwiklab
:
Anda tidak akan melihat output apa pun. Selesai, Anda telah membuat KeyRing dan CryptoKey.
- Buka Key management melalui Konsol dengan membuka Navigation menu > Security > Key Management.
UI web Key Management memungkinkan Anda melihat dan mengelola CryptoKey dan KeyRing. Anda akan menggunakan UI ini nanti saat mengelola izin.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 5. Mengenkripsi data Anda
Selanjutnya, coba enkripsi sejumlah data.
- Ambil isi email yang Anda lihat sebelumnya dan lakukan encoding
base64
dengan menjalankan perintah berikut:
Menggunakan endpoint encrypt, Anda dapat mengirim teks berenkode base64 yang ingin Anda enkripsikan ke kunci yang ditentukan.
- Jalankan perintah berikut:
encrypt
akan menampilkan hasil yang berbeda setiap kali dijalankan, meskipun pengguna menggunakan teks dan kunci yang sama.
Responsnya akan berupa payload JSON yang berisi teks terenkripsi dalam atribut ciphertext
.
- Setelah data dienkripsi, Anda dapat menyimpannya ke sebuah file dan menguploadnya ke bucket Cloud Storage. Untuk mengambil teks terenkripsi dari respons JSON dan menyimpannya ke sebuah file, gunakan utilitas command line jq. Respons dari panggilan sebelumnya dapat diarahkan ke jq, yang dapat mengurai properti
ciphertext
ke file1.encrypted
. Jalankan perintah berikut:
- Panggil endpoint
decrypt
untuk memverifikasi bahwa data terenkripsi dapat didekripsi dan teks yang didekripsi cocok dengan email aslinya. Data terenkripsi memuat informasi tentang versi CryptoKey yang digunakan untuk mengenkripsinya, jadi versi spesifik ini tidak pernah diberikan ke endpoint decrypt. Jalankan perintah berikut:
- Setelah memastikan bahwa teks berhasil dienkripsi, upload file yang telah dienkripsi ke bucket Cloud Storage.
Klik Check my progress untuk memverifikasi tujuan.
Tugas 6. Mengonfigurasi Izin IAM
Di KMS, ada dua izin utama yang perlu menjadi fokus Anda. Salah satu izin memungkinkan pengguna atau akun layanan untuk mengelola resource KMS, dan izin satunya memungkinkan pengguna atau akun layanan menggunakan kunci untuk mengenkripsi dan mendekripsi data.
Izin untuk mengelola kunci adalah cloudkms.admin
, dan siapa saja yang memiliki izin ini dapat membuat KeyRing serta membuat, memodifikasi, menonaktifkan, dan menghancurkan CryptoKey. Izin untuk mengenkripsi dan mendekripsi data adalah cloudkms.cryptoKeyEncrypterDecrypter
, dan digunakan untuk memanggil endpoint API enkripsi dan dekripsi.
Dalam pelatihan ini, Anda akan menggunakan pengguna yang saat ini diizinkan untuk menetapkan izin IAM.
- Untuk mendapatkan pengguna yang saat ini memiliki otorisasi, jalankan perintah berikut:
- Selanjutnya, beri pengguna tersebut kemampuan untuk mengelola resource KMS. Jalankan perintah
gcloud
berikut untuk menetapkan izin IAM guna mengelola KeyRing yang baru saja Anda buat:
Karena CryptoKey termasuk dalam KeyRing, dan KeyRing termasuk dalam Project, pengguna dengan izin atau peran tertentu pada level yang lebih tinggi dalam hierarki tersebut mewarisi izin yang sama atas resource turunannya. Misalnya, pengguna yang memiliki peran Owner pada sebuah Project juga merupakan Owner di semua KeyRing dan CryptoKey dalam project itu. Begitu juga jika seorang pengguna diberi peran cloudkms.admin
di KeyRing, maka dia memiliki izin yang terkait atas semua CryptoKey yang ada di KeyRing tersebut.
Tanpa izin cloudkms.cryptoKeyEncrypterDecrypter
, pengguna yang diizinkan tidak akan dapat menggunakan kunci itu untuk mengenkripsi atau mendekripsi data.
- Jalankan perintah
gcloud
berikut untuk menetapkan izin IAM guna mengenkripsi dan mendekripsi data untuk setiap CryptoKey yang ada di KeyRing yang Anda buat:
Sekarang Anda dapat melihat izin yang ditetapkan di bagian Cryptographic Keys pada Key Management.
- Centang kotak yang menggunakan nama key ring (
test
), lalu klik Principals di panel info sebelah kanan.
Menu yang berisi akun dan izin untuk key ring yang baru Anda tambahkan akan terbuka.
Tugas 7. Mencadangkan data dari command line
Setelah memahami cara mengenkripsi satu file, dan mendapatkan izin untuk melakukannya, Anda dapat menjalankan skrip untuk mencadangkan semua file dalam suatu direktori. Untuk contoh ini, salin semua email untuk allen-p, jalankan enkripsi, lalu upload ke bucket Cloud Storage.
- Pertama, salin semua email untuk allen-p ke direktori kerja Anda saat ini:
- Selanjutnya, salin dan tempel teks berikut ke Cloud Shell untuk mencadangkan dan mengenkripsi semua file di direktori allen-p ke bucket Cloud Storage Anda:
Skrip ini melakukan loop semua file dalam direktori tertentu, mengenkripsinya menggunakan KMS API, lalu menguploadnya ke Cloud Storage.
Klik Check my progress untuk memverifikasi tujuan.
Setelah skrip ini selesai, Anda dapat melihat file yang dienkripsi saat mengklik Storage dari menu kiri Konsol.
- Untuk menemukan file, buka Navigation menu > Cloud Storage > Buckets > YOUR_BUCKET > allen-p > inbox. Anda akan melihat sesuatu seperti ini:
Tugas 8. Melihat Cloud Audit Logs
Google Cloud Audit Logging terdiri dari dua stream log, yaitu Admin Activity dan Data Access, yang dihasilkan oleh layanan Google Cloud untuk membantu Anda menjawab pertanyaan "siapa melakukan apa, di mana, dan kapan?" dalam project Google Cloud Anda.
- Untuk melihat aktivitas pada resource apa pun di KMS, buka tab Navigation menu > Cloud Overview > Activity. Anda akan diarahkan ke Cloud Activity UI, klik View Log Explorer, pilih Cloud KMS Key Ring sebagai
Resource Type
, dan Anda akan melihat pembuatan dan semua perubahan yang dilakukan pada KeyRing.
Sekarang Anda telah mengenkripsi dan mengupload data menggunakan KMS dan Cloud Storage.
Hal yang telah dibahas
- Menggunakan IAM untuk mengelola izin KMS.
- Menggunakan KMS untuk mengenkripsi data.
- Menggunakan Cloud Storage untuk menyimpan data yang telah dienkripsi.
- Menggunakan Cloud Audit Logging untuk melihat semua aktivitas pada CryptoKey dan KeyRing.
Tugas 9. Menguji pengetahuan Anda
Uji pengetahuan Anda tentang Cloud KMS dengan mengikuti kuis ini.
Selamat!
Anda telah mempelajari cara mengenkripsi data dan mengelola kunci enkripsi menggunakan Cloud Key Management Service (KMS).
Langkah berikutnya/Pelajari lebih lanjut
- Pelajari lebih lanjut rotasi kunci enkripsi.
- Baca tentang enkripsi envelope
- Pelajari lebih lanjut opsi enkripsi data.
Manual Terakhir Diperbarui pada 15 April 2024
Lab Terakhir Diuji pada 31 Agustus 2023
Hak cipta 2024 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.