Halaman ini menjelaskan cara menggunakan Cloud Key Management Service (Cloud KMS) untuk membuat kunci gabungan yang kemudian dapat Anda gunakan untuk mengirim
deidentify dan
reidentify permintaan
ke Cloud Data Loss Prevention API dari Perlindungan Data Sensitif.
Proses penggunaan kunci kriptografi untuk melakukan de-identifikasi dan identifikasi ulang konten disebut pseudonimisasi (atau tokenisasi). Untuk informasi konseptual tentang proses ini, lihat Pseudonimisasi.
Untuk contoh yang menunjukkan cara membuat kunci gabungan, melakukan tokenisasi konten, dan mengidentifikasi ulang konten yang di-tokenisasi, lihat Melakukan de-identifikasi dan identifikasi ulang teks sensitif.
Anda dapat menyelesaikan langkah-langkah dalam dokumen ini dalam waktu 5 hingga 10 menit, tidak termasuk langkah-langkah Sebelum Anda memulai.
Sebelum memulai
- Login ke akun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Memilih project: Memilih project tidak memerlukan peran IAM tertentu Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih Google Cloud project yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama Google Cloud project Anda.
-
Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika berhasil membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.
-
Pastikan penagihan diaktifkan untuk Google Cloud project Anda.
Aktifkan Sensitive Data Protection dan Cloud KMS API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable dlp.googleapis.com
cloudkms.googleapis.com -
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Memilih project: Memilih project tidak memerlukan peran IAM tertentu Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih Google Cloud project yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama Google Cloud project Anda.
-
Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika berhasil membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.
-
Pastikan penagihan diaktifkan untuk Google Cloud project Anda.
Aktifkan Sensitive Data Protection dan Cloud KMS API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable dlp.googleapis.com
cloudkms.googleapis.com
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membuat kunci AES gabungan, minta administrator untuk memberi Anda peran IAM berikut pada project:
- Admin Cloud KMS (
roles/cloudkms.admin) - Pengenkripsi Cloud KMS CryptoKey (
roles/cloudkms.cryptoKeyEncrypter)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat key ring dan kunci
Sebelum memulai prosedur ini, tentukan tempat Anda ingin Perlindungan Data Sensitif memproses permintaan de-identifikasi dan identifikasi ulang. Saat membuat kunci Cloud KMS, Anda harus menyimpannya di global atau di region yang sama dengan yang akan Anda gunakan untuk permintaan Perlindungan Data Sensitif.
Jika tidak, permintaan Perlindungan Data Sensitif akan gagal.
Anda dapat menemukan daftar lokasi yang didukung di Lokasi Perlindungan Data Sensitif. Perhatikan nama region yang Anda pilih (misalnya, us-west1).
Prosedur ini menggunakan global sebagai lokasi untuk semua permintaan API. Jika Anda ingin menggunakan region lain, ganti global dengan nama region.
Buat key ring:
gcloud kms keyrings create "dlp-keyring" \ --location "global"Buat kunci:
gcloud kms keys create "dlp-key" \ --location "global" \ --keyring "dlp-keyring" \ --purpose "encryption"Cantumkan key ring dan kunci Anda:
gcloud kms keys list \ --location "global" \ --keyring "dlp-keyring"Anda akan mendapatkan output berikut:
NAME: projects/<var>PROJECT_ID</var>/locations/global/keyRings/dlp-keyring/cryptoKeys/dlp-key PURPOSE: ENCRYPT_DECRYPT ALGORITHM: GOOGLE_SYMMETRIC_ENCRYPTION PROTECTION_LEVEL: SOFTWARE LABELS: PRIMARY_ID: 1 PRIMARY_STATE: ENABLEDDalam output ini,
PROJECT_IDadalah ID project Anda.Nilai
NAMEadalah nama resource lengkap kunci Cloud KMS Anda. Catat nilai ini karena permintaan de-identifikasi dan identifikasi ulang memerlukannya.
Membuat kunci AES berenkode base64
Bagian ini menjelaskan cara membuat kunci Advanced Encryption Standard (AES) dan mengenkodekannya dalam format base64.
Buat kunci AES 128, 192, atau 256 bit. Perintah berikut menggunakan
openssluntuk membuat kunci 256 bit di direktori saat ini:openssl rand -out "./aes_key.bin" 32File
aes_key.binditambahkan ke direktori Anda saat ini.Enkode kunci AES sebagai string base64:
base64 -i ./aes_key.binAnda akan mendapatkan output yang mirip dengan berikut ini:
uEDo6/yKx+zCg2cZ1DBwpwvzMVNk/c+jWs7OwpkMc/s=
Menggabungkan kunci AES menggunakan kunci Cloud KMS
Bagian ini menjelaskan cara menggunakan kunci Cloud KMS yang Anda buat di Membuat key ring dan kunci untuk menggabungkan kunci AES berenkode base64 yang Anda buat di Membuat kunci AES berenkode base64.
Untuk menggabungkan kunci AES, gunakan curl untuk mengirim permintaan berikut ke
Cloud KMS API
projects.locations.keyRings.cryptoKeys.encrypt
metode:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/global/keyRings/dlp-keyring/cryptoKeys/dlp-key:encrypt" \
--request "POST" \
--header "Authorization:Bearer $(gcloud auth application-default print-access-token)" \
--header "content-type: application/json" \
--data "{\"plaintext\": \"BASE64_ENCODED_AES_KEY\"}"
Ganti kode berikut:
PROJECT_ID: ID project Anda.BASE64_ENCODED_AES_KEY: string berenkode base64 yang ditampilkan di Membuat kunci AES berenkode base64.
Respons yang Anda dapatkan dari Cloud KMS mirip dengan JSON berikut:
{
"name": "projects/<var>PROJECT_ID</var>/locations/global/keyRings/dlp-keyring/cryptoKeys/dlp-key/cryptoKeyVersions/1",
"ciphertext": "CiQAYuuIGo5DVaqdE0YLioWxEhC8LbTmq7Uy2G3qOJlZB7WXBw0SSQAjdwP8ZusZJ3Kr8GD9W0vaFPMDksmHEo6nTDaW/j5sSYpHa1ym2JHk+lUgkC3Zw5bXhfCNOkpXUdHGZKou1893O8BDby/82HY=",
"ciphertextCrc32c": "901327763",
"protectionLevel": "SOFTWARE"
}
Dalam output ini, PROJECT_ID adalah ID project Anda.
Perhatikan nilai ciphertext dalam respons.
Itulah kunci gabungan Anda.
Langkah berikutnya
Pelajari lebih lanjut cara melakukan tokenisasi data melalui kunci kriptografi.
Pelajari lebih lanjut tentang metode de-identifikasi yang menggunakan kunci gabungan ini, dan lihat contoh kode.