K-anonymity adalah properti set data yang menunjukkan identifikasi ulang datanya. Set data bersifat k-anonim jika ID semu untuk setiap orang dalam set data identik dengan setidaknya k – 1 orang lain juga ada dalam set data tersebut.
Anda dapat menghitung nilai k-anonymity berdasarkan satu atau beberapa kolom, atau kolom dari set data. Topik ini menunjukkan cara menghitung nilai k-anonymity untuk set data menggunakan Perlindungan Data Sensitif. Untuk mengetahui informasi selengkapnya tentang k-anonymity 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 Konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud. Buka pemilih project
- Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda. Pelajari cara mengonfirmasi bahwa penagihan diaktifkan untuk project Anda.
- Aktifkan Perlindungan Data Sensitif. Aktifkan Perlindungan Data Sensitif
- Pilih {i>dataset<i} BigQuery untuk dianalisis. Perlindungan Data Sensitif menghitung metrik k-anonymity dengan memindai tabel BigQuery.
- Tentukan sebuah ID (jika ada) dan setidaknya satu quasi-ID dalam set data. Untuk informasi selengkapnya, lihat Istilah dan teknik analisis risiko.
Komputasi k-anonymity
Perlindungan Data Sensitif melakukan analisis risiko setiap kali tugas analisis risiko dijalankan. Anda harus membuat tugas terlebih dahulu, baik dengan menggunakan Konsol Google Cloud, mengirim permintaan DLP API, atau menggunakan library klien Perlindungan Data Sensitif.
Konsol
Di konsol Google Cloud, buka halaman Create risk analysis.
Di bagian Choose input data, tentukan tabel BigQuery yang akan dipindai dengan memasukkan project ID dari project yang berisi tabel tersebut, ID set data tabel, dan nama tabel.
Di bagian Privacy metric to compute, pilih k-anonymity.
Di bagian ID Lowongan, Anda dapat secara opsional memberikan ID kustom ke tugas tersebut dan memilih lokasi resource yang menjadi tempat Perlindungan Data Sensitif akan memproses data Anda. Setelah selesai, klik Lanjutkan.
Di bagian Tentukan kolom, tentukan ID dan quasi-ID untuk tugas risiko k-anonimitas. Perlindungan Data Sensitif mengakses metadata dari tabel BigQuery yang Anda tentukan di langkah sebelumnya dan mencoba mengisi daftar kolom.
- Pilih kotak centang yang sesuai untuk menentukan kolom sebagai ID (ID) atau quasi-ID (QI). Anda harus memilih 0 atau 1 ID dan setidaknya 1 quasi-ID.
- Jika Perlindungan Data Sensitif tidak dapat mengisi kolom, klik Masukkan nama kolom untuk memasukkan satu atau beberapa kolom secara manual dan menetapkan setiap kolom sebagai ID atau ID semu. Setelah selesai, klik Lanjutkan.
Di bagian Tambahkan tindakan, Anda dapat menambahkan tindakan opsional untuk dilakukan saat tugas risiko selesai. Opsi yang tersedia adalah:
- Save to BigQuery: Menyimpan hasil pemindaian analisis risiko ke tabel BigQuery.
Publikasikan ke Pub/Sub: Memublikasikan notifikasi ke topik Pub/Sub.
Beri tahu melalui email: Mengirimkan email yang berisi hasil kepada Anda. Setelah selesai, klik Buat.
Tugas analisis risiko k-anonymity akan segera dimulai.
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST
Untuk menjalankan tugas analisis risiko baru guna menghitung k-anonymity, kirim permintaan ke resource projects.dlpJobs
, dengan PROJECT_ID menunjukkan ID project Anda:
https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs
Permintaan berisi objek RiskAnalysisJobConfig
, yang terdiri dari hal berikut:
Objek
PrivacyMetric
. Di sinilah Anda menentukan untuk menghitung k-anonymity dengan menyertakan objekKAnonymityConfig
.Objek
BigQueryTable
. Tentukan tabel BigQuery yang akan dipindai dengan menyertakan semua hal berikut:projectId
: ID project dari project yang berisi tabel.datasetId
: ID set data dari tabel.tableId
: Nama tabel.
Kumpulan satu atau beberapa objek
Action
, yang mewakili tindakan yang akan dijalankan, dalam urutan yang ditentukan pada penyelesaian tugas. Setiap objekAction
dapat berisi salah satu tindakan berikut:- Objek
SaveFindings
: Menyimpan hasil pemindaian analisis risiko ke tabel BigQuery. Objek
PublishToPubSub
: Memublikasikan notifikasi ke topik Pub/Sub.Objek
JobNotificationEmails
: Mengirimkan email yang berisi hasil kepada Anda.
Dalam objek
KAnonymityConfig
, Anda menetapkan hal berikut:quasiIds[]
: Satu atau beberapa ID kuasi (objekFieldId
) yang akan dipindai dan digunakan untuk menghitung k-anonymity. Saat Anda menentukan beberapa ID kuasi, ID kuasi dianggap sebagai satu kunci komposit. Struct dan jenis data berulang tidak didukung, tetapi kolom bertingkat didukung selama kolom tersebut tidak menyusunnya sendiri atau bertingkat dalam kolom berulang.entityId
: Nilai ID opsional yang, jika ditetapkan, menunjukkan bahwa semua baris yang sesuai dengan setiapentityId
berbeda harus dikelompokkan bersama untuk komputasi k-anonymity. Biasanya,entityId
akan berupa kolom yang mewakili pengguna unik, seperti ID pelanggan atau ID pengguna. SaatentityId
muncul di beberapa baris dengan nilai quasi-ID yang berbeda, baris tersebut akan digabungkan untuk membentuk multiset yang akan digunakan sebagai ID kuasi untuk entity tersebut. Untuk mengetahui informasi selengkapnya tentang ID entity, lihat ID entity dan komputasi k-anonymity dalam topik konseptual Analisis risiko.
- Objek
Begitu Anda mengirim permintaan ke DLP API, tugas analisis risiko akan dimulai.
Membuat daftar tugas analisis risiko yang telah selesai
Anda dapat melihat daftar tugas analisis risiko yang telah dijalankan dalam project saat ini.
Konsol
Untuk menampilkan daftar tugas analisis risiko yang sedang berjalan dan sebelumnya di Konsol Google Cloud, lakukan hal berikut:
Di Konsol Google Cloud, buka Perlindungan Data Sensitif.
Klik tab Tugas & pemicu tugas di bagian atas halaman.
Klik tab Risk jobs.
Listingan pekerjaan berisiko akan muncul.
Protocol
Untuk menampilkan daftar tugas analisis risiko yang sedang berjalan dan yang sebelumnya dijalankan, kirim permintaan GET ke
resource
projects.dlpJobs
. Menambahkan filter jenis tugas (?type=RISK_ANALYSIS_JOB
) akan mempersempit
respons hanya ke tugas analisis risiko.
https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs?type=RISK_ANALYSIS_JOB
Respons yang Anda terima berisi representasi JSON dari semua tugas analisis risiko saat ini dan sebelumnya.
Melihat hasil lowongan k-anonymity
Perlindungan Data Sensitif di Google Cloud Console menampilkan visualisasi bawaan untuk tugas k-anonimitas yang telah selesai. Setelah mengikuti petunjuk di bagian sebelumnya, dari listingan tugas analisis risiko, pilih tugas yang ingin Anda lihat hasilnya. Dengan asumsi tugas telah berhasil berjalan, bagian atas halaman Detail analisis risiko akan terlihat seperti ini:
Di bagian atas halaman terdapat informasi tentang tugas risiko k-anonymity, termasuk ID tugasnya dan, di bagian Container, lokasi resource-nya.
Untuk melihat hasil penghitungan k-anonymity, klik tab K-anonymity. Untuk melihat konfigurasi tugas analisis risiko, klik tab Configuration.
Tab K-anonymity mencantumkan ID entity (jika ada) dan ID semu yang digunakan untuk menghitung k-anonymity terlebih dahulu.
Diagram risiko
Diagram Risiko identifikasi ulang, pada sumbu y, potensi persentase kehilangan data untuk baris unik dan kombinasi ID semu unik yang akan dicapai, pada sumbu x, nilai k-anonimitas. Warna diagram juga menunjukkan potensi risiko. Warna biru yang lebih gelap menunjukkan risiko yang lebih tinggi, sedangkan warna yang lebih terang menunjukkan risiko yang lebih kecil.
Nilai k-anonymity yang lebih tinggi menunjukkan risiko identifikasi ulang yang lebih sedikit. Namun, untuk mencapai nilai k-anonimitas yang lebih tinggi, Anda harus menghapus persentase yang lebih tinggi dari total baris dan kombinasi kuasi-ID unik yang lebih tinggi, yang dapat mengurangi utilitas data. Guna melihat potensi nilai persentase kerugian tertentu untuk nilai k-anonymity tertentu, arahkan kursor ke diagram. Seperti yang ditunjukkan dalam screenshot, sebuah tooltip muncul pada diagram.
Untuk melihat detail selengkapnya tentang nilai k-anonymity tertentu, klik titik data yang sesuai. Penjelasan mendetail ditampilkan di bawah diagram, dan contoh tabel data muncul di bagian bawah halaman.
Tabel data sampel risiko
Komponen kedua dari halaman hasil tugas risiko adalah tabel data sampel. Kode ini menampilkan kombinasi kuasi-ID untuk nilai k-anonymity target tertentu.
Kolom pertama dari tabel mencantumkan nilai k-anonymity. Klik nilai k-anonymity untuk melihat sampel data terkait yang perlu dihapus guna mencapai nilai tersebut.
Kolom kedua menampilkan masing-masing potensi kehilangan data dari baris unik dan kombinasi ID semu, serta jumlah grup dengan minimal k record dan jumlah total catatan.
Kolom terakhir menampilkan sampel grup yang memiliki kombinasi ID semu, beserta jumlah catatan yang ada untuk kombinasi tersebut.
Mengambil detail tugas menggunakan REST
Untuk mengambil hasil tugas analisis risiko k-anonimitas menggunakan REST API, kirim permintaan GET berikut ke resource projects.dlpJobs
. Ganti PROJECT_ID dengan project ID Anda dan JOB_ID dengan ID tugas yang ingin Anda dapatkan hasilnya.
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 menampilkan objek JSON yang berisi instance tugas. Hasil
analisis ada di dalam kunci "riskDetails"
, dalam objek
AnalyzeDataSourceRiskDetails
. Untuk mengetahui informasi selengkapnya, lihat referensi API untuk
resource
DlpJob
.
Contoh kode: Menghitung k-anonymity dengan ID entity
Contoh ini membuat tugas analisis risiko yang menghitung k-anonymity dengan ID entity.
Untuk mengetahui informasi selengkapnya tentang ID entity, lihat ID entity dan komputasi k-anonymity.
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Perlindungan Data Sensitif, lihat Library klien Perlindungan Data Sensitif.
Untuk mengautentikasi Perlindungan Data Sensitif, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Langkah selanjutnya
- Pelajari cara menghitung nilai l-beragam untuk set data.
- Pelajari cara menghitung nilai k-map untuk set data.
- Pelajari cara menghitung nilai /*-presence untuk set data.