K-map sangat mirip dengan k-anonimitas, kecuali bahwa k-map mengasumsikan bahwa penyerang kemungkinan besar tidak mengetahui siapa yang ada dalam set data. Gunakan k-map jika set data Anda relatif kecil, atau jika tingkat upaya yang diperlukan untuk menggeneralisasi atribut terlalu tinggi.
Sama seperti k-anonimitas, k-map mengharuskan Anda menentukan kolom database mana yang merupakan pengidentifikasi semu. Dengan melakukannya, Anda menyatakan data apa yang kemungkinan besar akan digunakan penyerang untuk mengidentifikasi ulang subjek. Selain itu, penghitungan nilai k-map memerlukan set data identifikasi ulang: tabel yang lebih besar untuk membandingkan baris dalam set data asli.
Topik ini menunjukkan cara menghitung nilai k-map untuk set data menggunakan Sensitive Data Protection. Untuk mengetahui informasi selengkapnya tentang k-map atau analisis risiko secara umum, lihat topik konsep analisis risiko sebelum melanjutkan.
Sebelum memulai
Sebelum melanjutkan, pastikan Anda telah melakukan hal berikut:
- Login ke Akun Google Anda.
- Di Google Cloud konsol, pada halaman pemilih project, pilih atau buat Google Cloud project. Buka pemilih project
- Pastikan penagihan diaktifkan untuk project Anda Google Cloud . Pelajari cara mengonfirmasi bahwa penagihan diaktifkan untuk project Anda.
- Aktifkan Perlindungan Data Sensitif. Mengaktifkan Perlindungan Data Sensitif
- Pilih set data BigQuery untuk dianalisis. Perlindungan Data Sensitif memperkirakan metrik k-map dengan memindai tabel BigQuery.
- Tentukan jenis set data yang ingin Anda gunakan untuk memodelkan set data serangan. Untuk mengetahui informasi selengkapnya, lihat halaman referensi untuk objek
KMapEstimationConfig, serta Istilah dan teknik analisis risiko.
Menghitung perkiraan k-map
Anda dapat memperkirakan nilai k-map menggunakan Perlindungan Data Sensitif, yang menggunakan
model statistik untuk memperkirakan set data identifikasi ulang. Hal ini berbeda dengan metode analisis risiko lainnya, yang set data serangannya diketahui secara eksplisit. Bergantung pada jenis data, Sensitive Data Protection menggunakan set data yang tersedia secara publik (misalnya, dari US Census) atau model statistik kustom (misalnya, satu atau beberapa Tabel BigQuery yang Anda tentukan), atau mengekstrapolasi dari distribusi nilai dalam set data input Anda. Untuk mengetahui informasi selengkapnya, lihat halaman referensi untuk objek
KMapEstimationConfig.
Untuk menghitung perkiraan k-map menggunakan Sensitive Data Protection, konfigurasikan terlebih dahulu tugas risiko. Buat permintaan ke
projects.dlpJobs
resource, dengan PROJECT_ID menunjukkan ID project
Anda:
https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs
Permintaan tersebut berisi
RiskAnalysisJobConfig
objek, yang terdiri dari hal berikut:
A
PrivacyMetricobjek. Di sini Anda menentukan bahwa Anda ingin menghitung k-map dengan menentukanKMapEstimationConfigobjek yang berisi hal berikut:quasiIds[]: Wajib diisi. Kolom (TaggedFieldobjek) yang dianggap sebagai pengidentifikasi semu untuk dipindai dan digunakan untuk menghitung k-map. Tidak boleh ada dua kolom yang memiliki tag yang sama. Kolom ini dapat berupa salah satu hal berikut:- An infoType: Hal ini menyebabkan Perlindungan Data Sensitif menggunakan set data publik yang relevan sebagai model statistik populasi, termasuk kode pos AS, kode wilayah, usia, dan gender.
- InfoType kustom: Tag kustom tempat Anda menunjukkan tabel tambahan (objek
AuxiliaryTable) yang berisi informasi statistik tentang kemungkinan nilai kolom ini. - Tag
inferred: Jika tidak ada tag semantik yang ditunjukkan, tentukaninferred. Perlindungan Data Sensitif menyimpulkan model statistik dari distribusi nilai dalam data input.
regionCode: Kode wilayah ISO 3166-1 alpha-2 untuk digunakan Perlindungan Data Sensitif dalam pemodelan statistik. Nilai ini diperlukan jika tidak ada kolom yang diberi tag dengan infoType khusus wilayah (misalnya, kode pos AS) atau kode wilayah.auxiliaryTables[]: Tabel tambahan (objekAuxiliaryTable) yang akan digunakan dalam analisis. Setiap tag kustom yang digunakan untuk memberi tag kolom pengidentifikasi semu (dariquasiIds[]) harus muncul di tepat satu kolom dari satu tabel tambahan.
Objek
BigQueryTable. Tentukan tabel BigQuery yang akan dipindai dengan menyertakan semua hal berikut:projectId: project ID dari project yang berisi tabel.datasetId: ID set data tabel.tableId: Nama tabel.
Kumpulan satu atau beberapa
Actionobjek, yang mewakili tindakan yang akan dijalankan, dalam urutan yang diberikan, setelah tugas selesai. Setiap objekActiondapat berisi salah satu tindakan berikut:SaveFindingsobjek: Menyimpan hasil pemindaian analisis risiko ke tabel BigQuery.PublishToPubSubobjek: Memublikasikan notifikasi ke topik Pub/Sub.
PublishSummaryToCsccobjek: Menyimpan ringkasan hasil ke Security Command Center.PublishFindingsToCloudDataCatalogobjek: Menyimpan hasil ke Data Catalog.JobNotificationEmailsobjek: Mengirimi Anda email berisi hasil.PublishToStackdriverobjek: Menyimpan hasil ke Google Cloud Observability.
Contoh kode
Berikut adalah kode contoh dalam beberapa bahasa yang menunjukkan cara menggunakan Sensitive Data Protection untuk menghitung nilai k-map.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Sensitive Data Protection, lihat Library klien Sensitive Data Protection.
Untuk melakukan autentikasi ke Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Melihat hasil tugas k-map
Untuk mengambil hasil tugas analisis risiko k-map menggunakan REST API,
kirim permintaan GET berikut ke
projects.dlpJobs
resource. Ganti PROJECT_ID dengan project ID Anda dan
JOB_ID dengan ID tugas yang hasilnya ingin Anda dapatkan.
ID tugas ditampilkan saat Anda memulai tugas, dan juga dapat diambil dengan
mencantumkan semua tugas.
GET https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs/JOB_ID
Permintaan tersebut menampilkan objek JSON yang berisi instance tugas. Hasil
analisis berada di dalam kunci "riskDetails", dalam
AnalyzeDataSourceRiskDetails
objek. Untuk mengetahui informasi selengkapnya, lihat referensi API untuk
DlpJob
resource.
Langkah berikutnya
- Pelajari cara menghitung nilai k-anonimitas untuk set data.
- Pelajari cara menghitung nilai l-diversitas untuk set data.
- Pelajari cara menghitung nilai δ-kehadiran untuk set data.