GSP864

Ringkasan
Cloud Data Loss Prevention (DLP) API adalah bagian dari Sensitive Data Protection, yang merupakan layanan terkelola sepenuhnya yang dirancang untuk membantu menemukan, mengklasifikasikan, dan melindungi informasi sensitif.
Anda dapat menggunakan DLP API untuk mengklasifikasikan data dengan berbagai cara, termasuk jenis data, tingkat sensitivitas, dan kategori.
DLP API melindungi data sensitif dengan berbagai cara, termasuk:
-
Penyamaran: menyamarkan data sensitif dari dokumen atau file.
-
Masking: menyamarkan data sensitif menggunakan placeholder, seperti
*.
-
Tokenisasi: mengganti data sensitif dengan ID unik.
-
Enkripsi: mengenkripsi data sensitif.
Di lab ini, Anda akan mempelajari kemampuan dasar DLP API dan mencoba berbagai cara menggunakan API untuk melindungi data.
Yang akan Anda pelajari
Di lab ini, Anda akan menggunakan DLP API untuk melakukan hal berikut:
- Memeriksa string dan file untuk menemukan jenis info yang cocok
- Mempelajari teknik de-identifikasi dan melakukan de-identifikasi data
- Menyamarkan jenis info dalam string dan gambar
Penyiapan dan persyaratan
Sebelum mengklik tombol Start 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 interaktif ini dapat Anda gunakan untuk melakukan 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).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal 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.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
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.
-
Klik jendela berikut:
- Lanjutkan melalui jendela informasi Cloud Shell.
- Beri otorisasi ke Cloud Shell untuk menggunakan kredensial Anda guna melakukan panggilan Google Cloud API.
Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke Project_ID, . Output berisi baris yang mendeklarasikan Project_ID untuk sesi ini:
Project Cloud Platform Anda dalam sesi ini disetel ke {{{project_0.project_id | "PROJECT_ID"}}}
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:
gcloud auth list
- Klik Authorize.
Output:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Untuk menetapkan akun aktif, jalankan:
$ gcloud config set account `ACCOUNT`
- (Opsional) Anda dapat menampilkan daftar ID project dengan perintah ini:
gcloud config list project
Output:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.
Menetapkan region
Tetapkan region untuk project Anda:
gcloud config set compute/region {{{project_0.default_region | Region}}}
Tugas 1. Meng-clone repo dan mengaktifkan API
- Di Cloud Shell, jalankan perintah berikut untuk mendownload repositori Klien Node.js Cloud Data Loss Prevention:
git clone https://github.com/googleapis/synthtool
- Setelah mendownload kode project, ubah ke direktori
samples dan instal paket Node.js yang diperlukan:
cd synthtool/tests/fixtures/nodejs-dlp/samples/ && npm install
Catatan: Abaikan pesan peringatan apa pun.
- Pastikan Anda menggunakan project yang benar dengan menyetelnya menggunakan perintah
gcloud berikut:
export PROJECT_ID={{{project_0.project_id | "filled in at lab start"}}}
gcloud config set project $PROJECT_ID
Mengaktifkan API
Berikut adalah API yang diperlukan untuk mengaktifkan project Anda:
-
DLP API - Menyediakan metode untuk deteksi, analisis risiko, dan de-identifikasi fragmen sensitif privasi dalam teks, gambar, dan repositori penyimpanan Google Cloud.
-
Cloud Key Management Service (KMS) API - Google Cloud KMS memungkinkan pengelolaan kunci enkripsi dan menjalankan operasi kriptografis dengan kunci tersebut.
- Aktifkan API yang diperlukan dengan perintah
gcloud berikut:
gcloud services enable dlp.googleapis.com cloudkms.googleapis.com \
--project $PROJECT_ID
Klik Periksa progres saya untuk memverifikasi tujuan.
Mengaktifkan API
Tugas 2. Memeriksa string dan file
Direktori samples dari project yang didownload pada langkah sebelumnya berisi beberapa file javascript yang memanfaatkan berbagai fungsi DLP API. File inspectString.js memeriksa string yang disediakan untuk jenis info sensitif.
- Berikan opsi string dan contoh string dengan beberapa informasi yang berpotensi sensitif:
node inspectString.js $PROJECT_ID "My email address is jenny@somedomain.com and you can call me at 555-867-5309" > inspected-string.txt
Output akan memberi tahu Anda temuan untuk setiap jenis info yang cocok, yang mencakup:
-
InfoType: jenis informasi yang terdeteksi untuk bagian string tersebut. Temukan daftar lengkap jenis info yang mungkin di sini. Secara default, inspectString.js hanya memeriksa jenis info CREDIT_CARD_NUMBER, PHONE_NUMBER, PERSON_NAME, dan EMAIL_ADDRESS
-
Kemungkinan: hasil dikategorikan berdasarkan seberapa besar kemungkinan setiap hasil mewakili kecocokan. Kemungkinan dapat berkisar dari VERY_UNLIKELY hingga VERY_LIKELY.
Periksa output menggunakan perintah di bawah:
cat inspected-string.txt
Temuan untuk permintaan di atas adalah:
Findings:
Info type: PERSON_NAME
Likelihood: POSSIBLE
Info type: EMAIL_ADDRESS
Likelihood: LIKELY
Info type: PHONE_NUMBER
Likelihood: VERY_LIKELY
- Demikian pula, Anda dapat memeriksa file untuk jenis info. Jalankan perintah berikut untuk meninjau file
accounts.txt contoh:
cat resources/accounts.txt
File tersebut mencakup teks berikut:
Nomor kartu kredit saya adalah 1234 5678 9012 3456, dan CVV saya adalah 789.
- Gunakan file
inspectFile.js untuk memeriksa file yang disediakan untuk jenis info sensitif:
node inspectFile.js $PROJECT_ID resources/accounts.txt > inspected-file.txt
Periksa output menggunakan perintah di bawah:
cat inspected-file.txt
Hasilnya:
Findings:
Info type: CREDIT_CARD_NUMBER
Likelihood: VERY_LIKELY
Berikut adalah fungsi asinkron yang menggunakan API untuk memeriksa input string:
async function inspectString(
ProjectId,
string,
minLikelihood,
maxFindings,
infoTypes,
customInfoTypes,
includeQuote
) {
...
}
Argumen yang disediakan untuk parameter di atas digunakan untuk membuat objek permintaan. Permintaan tersebut kemudian diberikan ke fungsi inspectContent untuk mendapatkan respons yang menghasilkan output:
// Construct item to inspect
const item = {value: string};
// Construct request
const request = {
parent: `projects/${projectId}/locations/global`,
inspectConfig: {
infoTypes: infoTypes,
customInfoTypes: customInfoTypes,
minLikelihood: minLikelihood,
includeQuote: includeQuote,
limits: {
maxFindingsPerRequest: maxFindings,
},
},
item: item,
};
// Run request
const [response] = await dlp.inspectContent(request);
Mengupload output ke Cloud Storage
Jalankan perintah berikut untuk mengupload respons di Cloud Storage untuk validasi pelacakan aktivitas:
gsutil cp inspected-string.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
gsutil cp inspected-file.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
Klik Periksa progres saya untuk memverifikasi tujuan.
Memeriksa string dan file
Tugas 3. De-identifikasi
Selain memeriksa dan mendeteksi data sensitif, Anda juga dapat menggunakan Sensitive Data Protection untuk melakukan de-identifikasi menggunakan DLP API. De-identifikasi adalah proses penghapusan informasi identitas dari data. API mendeteksi data sensitif sebagaimana ditentukan oleh jenis info, lalu menggunakan transformasi de-identifikasi untuk menyamarkan, menghapus, atau mengaburkan data.
- Jalankan perintah berikut untuk menggunakan
deidentifyWithMask.js guna mencoba de-identifikasi dengan mask:
node deidentifyWithMask.js $PROJECT_ID "My order number is F12312399. Email me at anthony@somedomain.com" > de-identify-output.txt
Periksa output menggunakan perintah di bawah:
cat de-identify-output.txt
Dengan mask, API mengganti karakter jenis info yang cocok dengan karakter lain, * secara default. Contoh output:
My order number is F12312399. Email me at *****************************
Perhatikan bahwa alamat email dalam string di-obfuscate, sedangkan nomor pesanan arbitrer tetap utuh. (Jenis info kustom mungkin diperbolehkan, tetapi di luar cakupan lab ini).
Lihat fungsi yang menggunakan DLP API untuk melakukan de-identifikasi dengan mask. Sekali lagi, argumen ini digunakan untuk membuat objek permintaan. Kali ini, nilai tersebut disediakan untuk fungsi deidentifyContent:
async function deidentifyWithMask() {
const request = {
parent: `projects/${projectId}/locations/global`,
deidentifyConfig: {
infoTypeTransformations: {
transformations: [
{
primitiveTransformation: {
characterMaskConfig: {
maskingCharacter: maskingCharacter,
numberToMask: numberToMask,
},
},
},
],
},
},
item: item,
};
// Run deidentification request
const [response] = await dlp.deidentifyContent(request);
Mengupload output ke Cloud Storage
Jalankan perintah berikut untuk mengupload respons di Cloud Storage untuk validasi pelacakan aktivitas:
gsutil cp de-identify-output.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
Klik Periksa progres saya untuk memverifikasi tujuan.
De-identifikasi
Tugas 4. Menyamarkan string dan gambar
Metode lain untuk meng-obfuscate informasi sensitif adalah penyamaran. Penyamaran mengganti kecocokan dengan jenis info yang diidentifikasi cocok.
- Gunakan
redactText.js untuk menyamarkan teks dari input sampel:
node redactText.js $PROJECT_ID "Please refund the purchase to my credit card 4012888888881881" CREDIT_CARD_NUMBER > redacted-string.txt
Periksa output menggunakan perintah di bawah:
cat redacted-string.txt
Output mengganti contoh nomor kartu kredit dengan jenis info CREDIT_CARD_NUMBER:
Please refund the purchase on my credit card [CREDIT_CARD_NUMBER]
Hal ini berguna jika Anda ingin menyembunyikan informasi sensitif tetapi tetap mengidentifikasi jenis informasi yang dihapus. DLP API juga dapat menyamarkan informasi dari gambar yang berisi teks. Lihat contoh gambar (terletak di direktori samples/resources):

- Untuk menyamarkan nomor telepon dari gambar di atas, jalankan perintah berikut:
node redactImage.js $PROJECT_ID resources/test.png "" PHONE_NUMBER ./redacted-phone.png
Seperti yang ditentukan, gambar baru bernama redacted-phone.png dibuat dengan informasi yang diminta disembunyikan. Untuk memverifikasi, buka file samples/redacted-phone.png menggunakan Editor Kode Cloud Shell:
Catatan: Di Editor Kode Cloud Shell, gunakan panel kiri (Explorer) untuk membuka synthtool > tests > fixtures > nodejs-dlp > samples > redacted-phone.png

- Coba lagi untuk menyamarkan alamat email dari gambar:
node redactImage.js $PROJECT_ID resources/test.png "" EMAIL_ADDRESS ./redacted-email.png
Seperti yang ditentukan, gambar baru bernama redacted-email.png dibuat dengan informasi yang diminta disembunyikan. Untuk memverifikasi, buka file samples/redacted-email.png di Editor Kode Cloud Shell:

Berikut adalah fungsi yang digunakan untuk menyamarkan dari sebuah string:
async function redactText(
callingProjectId,
string,
minLikelihood,
infoTypes
) {
...}
Berikut adalah permintaan yang diberikan ke fungsi deidentifyContent:
const request = {
parent: `projects/${projectId}/locations/global`,
item: {
value: string,
},
deidentifyConfig: {
infoTypeTransformations: {
transformations: [replaceWithInfoTypeTransformation],
},
},
inspectConfig: {
minLikelihood: minLikelihood,
infoTypes: infoTypes,
},
};
const [response] = await dlp.deidentifyContent(request);
Demikian pula, berikut adalah fungsi untuk menyamarkan gambar:
async function redactImage(
callingProjectId,
filepath,
minLikelihood,
infoTypes,
outputPath
) {
...}
Berikut adalah permintaan yang diberikan ke fungsi redactImage:
// Construct image redaction request
const request = {
parent: `projects/${projectId}/locations/global`,
byteItem: {
type: fileTypeConstant,
data: fileBytes,
},
inspectConfig: {
minLikelihood: minLikelihood,
infoTypes: infoTypes,
},
imageRedactionConfigs: imageRedactionConfigs,
};
Mengupload output ke Cloud Storage
Jalankan perintah berikut untuk mengupload respons di Cloud Storage untuk validasi pelacakan aktivitas:
gsutil cp redacted-string.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
gsutil cp redacted-phone.png gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
gsutil cp redacted-email.png gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}}
Klik Periksa progres saya untuk memverifikasi tujuan.
Menyamarkan string dan gambar
Selamat!
Cloud Data Loss Prevention (DLP) API adalah alat canggih yang menyediakan akses ke platform inspeksi, klasifikasi, dan de-identifikasi data sensitif yang canggih. Anda telah menggunakan DLP API untuk memeriksa string dan file untuk berbagai jenis info, lalu menyamarkan data dari string dan gambar.
Langkah berikutnya/Pelajari lebih lanjut
Pastikan Anda membaca dokumentasi berikut untuk melihat praktik lainnya dengan DLP API:
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 22 April 2025
Lab Terakhir Diuji pada 22 April 2025
Hak cipta 2026 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.