Informasi latar belakang
Penyamaran data mengubah informasi privasi sensitif seperti nama, nomor kartu identitas, nomor ponsel, nomor telepon rumah, rekening bank, dan alamat email menggunakan algoritma penyamaran untuk melindungi data privasi sensitif.
Konsep
Penyamaran data: Fitur yang menggunakan algoritma dan teknik tertentu untuk memproses, menyamarkan, atau mengganti data sensitif selama pemrosesan dan penyimpanan data sehingga data tersebut tidak dapat diidentifikasi atau dipulihkan, melindungi keamanan data dan mencegah pelanggaran data.
Penyamaran dinamis: Proses menyamarkan data sensitif secara real-time ketika pengguna menanyakan database tanpa memodifikasi data sumber dalam database. Biasanya digunakan dalam lingkungan produksi untuk menghindari pelanggaran data sambil memastikan integritas dan akurasi data asli. Namun, penyamaran dinamis lambat dan dapat mengurangi efisiensi kueri database.
Penyamaran statis: Proses pra-pemrosesan data sensitif dan menyimpan data yang telah diproses di media penyimpanan seperti database. Biasanya digunakan dalam lingkungan pengujian, pengembangan, dan demonstrasi untuk melindungi data sensitif dari dilihat oleh personel yang tidak berwenang serta menghindari tanggung jawab hukum atas pelanggaran data. Penyamaran statis cepat dan meningkatkan efisiensi kueri, tetapi setelah dilakukan, data asli tidak dapat dipulihkan, merusak akurasi data.
Algoritma penyamaran: Algoritma yang digunakan untuk menyamarkan data sensitif. Dapat secara efektif melindungi keamanan data sensitif dan menghindari pelanggaran data sambil mempertahankan format dan struktur data untuk memfasilitasi kueri dan penggunaan.
Aturan identifikasi: Aturan yang digunakan untuk secara otomatis mengidentifikasi data sensitif untuk penyamaran data. Saat Anda memindai untuk menambahkan kolom sensitif, kolom tersebut diidentifikasi secara otomatis berdasarkan aturan yang ditentukan.
Kolom sensitif: Kolom yang berisi data sensitif dalam tabel database.
Proses eksekusi

Masuk ke konsol ODC sebagai administrator proyek dan pilih Spesifikasi Keamanan > Algoritma Masking untuk melihat algoritma penyamaran bawaan dan menguji efek penyamaran.
Masuk ke konsol ODC sebagai administrator proyek dan pilih Proyek > Kolom Sensitif. Anda dapat mengklik Tambah Kolom Sensitif dan memilih Tambah Secara Manual atau Pindai untuk Menambahkan. Untuk memilih Pindai untuk Menambahkan, pastikan bahwa aturan identifikasi telah dibuat.
Saat masuk sebagai pengguna biasa dan melakukan kueri di jendela SQL, mengekspor set hasil, mengekspor tiket, atau mengirimkan tiket perubahan database, data keluaran di kolom sensitif disamarkan.
Prasyarat
Administrator proyek atau DBA dapat mengelola kolom sensitif dan aturan identifikasi.
Semua pengguna dapat melihat dan menguji efek penyamaran, tetapi pengguna biasa tidak diizinkan membuat, mengedit, atau menghapus algoritma penyamaran.
Pertimbangan
Penyamaran data tidak didukung di jendela baris perintah.
Penyamaran data tidak didukung selama eksekusi PL.
Saat mengonfigurasi skrip aturan identifikasi, Groovy hanya mendukung kelas Objects dan String di Java.
Saat mengonfigurasi skrip aturan identifikasi, penutupan Groovy dan fungsi penutupan bawaan tidak didukung.
Jika data sensitif terlibat saat mengekspor data dari sumber data MySQL, algoritma mask semua digunakan untuk penyamaran.
Pengelolaan kolom sensitif
Tambah kolom sensitif
Contoh: Samarkan kolom email dan mobile_phone dari tabel student di database odc_test.basis data.
Parameter | Nilai contoh |
Sumber data | mysql4.2.4 |
Nama database sumber | odc_test |
Nama tabel | student |
Di jendela kolaborasi proyek, pilih Proyek > Kolom Sensitif. Anda dapat mengklik Tambah Kolom Sensitif dan memilih Tambah Secara Manual atau Pindai untuk Menambahkan.

Setelah menambahkan kolom sensitif secara manual atau memindai untuk menambahkan kolom sensitif, klik Kirim.
Metode 1: Tambahkan kolom sensitif secara manual

Metode 2: Pindai untuk Menambahkan Kolom Sensitif
CatatanSebelum memindai untuk menambahkan kolom sensitif, pastikan aturan identifikasi telah dibuat. Untuk informasi lebih lanjut, lihat bagian Pengelolaan Aturan Identifikasi dalam topik ini.

Dalam daftar kolom sensitif, Anda dapat melihat dan mengaktifkan kolom sensitif yang telah ditambahkan.

Edit kolom sensitif
Dalam daftar kolom sensitif yang ditunjukkan pada gambar sebelumnya, klik Edit di kolom Tindakan kolom sensitif untuk mengubah algoritma penyamaran untuk kolom tersebut.
Hapus kolom sensitif
Dalam daftar kolom sensitif, klik Hapus di kolom Tindakan kolom sensitif untuk menghapusnya.
Pengelolaan aturan identifikasi
Aturan identifikasi adalah perluasan dari kemampuan manajemen data sensitif. Selain menambahkan kolom sensitif secara manual, Anda juga dapat menentukan aturan identifikasi untuk mengimplementasikan pemindaian otomatis kolom sensitif. Aturan identifikasi mendefinisikan kondisi pencocokan. ODC akan mengidentifikasi kolom yang memenuhi kondisi yang ditentukan sebagai kolom sensitif. ODC mendukung tiga metode identifikasi untuk aturan identifikasi: jalur, ekspresi reguler, dan skrip.
Jalur: Aturan identifikasi berbasis ekspresi jalur mengidentifikasi kolom sensitif berdasarkan nama database, nama tabel, atau nama kolom. Nama database, nama tabel, dan nama kolom dipisahkan dengan titik (.). Kondisi pencocokan dipisahkan dengan koma (,). Asterisk (*) digunakan sebagai karakter wildcard.
Parameter
Diperlukan?
Deskripsi
Nama Aturan
Ya
Nama aturan identifikasi, yang tidak boleh melebihi 64 karakter panjangnya.
Status Aturan
Ya
Status aturan identifikasi. Nilai valid: Aktifkan dan Nonaktifkan.
Aturan Pencocokan
Ya
Kondisi untuk mencocokkan kolom sensitif. Kolom yang memenuhi kondisi yang ditentukan di sini diidentifikasi sebagai kolom sensitif.
Misalnya, aturan identifikasi
\*\.\*\.mobile_phonemenentukan untuk mencocokkan kolom bernamamobile_phonedi tabel dan database apa pun.Aturan Pengecualian
Tidak
Kondisi untuk mengecualikan kolom data.
PentingSistem menentukan apakah kolom data merupakan kolom sensitif berdasarkan kondisi pengecualian terlebih dahulu dan kemudian kondisi pencocokan.
Algoritma Masking
Ya
Algoritma penyamaran default untuk kolom sensitif yang diidentifikasi.
Deskripsi Aturan
Tidak
Deskripsi aturan identifikasi.
Ekspresi reguler: Aturan identifikasi berbasis ekspresi reguler mengidentifikasi kolom sensitif berdasarkan nama database, nama tabel, nama kolom, atau komentar kolom.
Parameter
Diperlukan?
Deskripsi
Nama Aturan
Ya
Nama aturan identifikasi, yang tidak boleh melebihi 64 karakter panjangnya.
Status Aturan
Ya
Status aturan identifikasi. Nilai valid: Aktifkan dan Nonaktifkan.
Objek Identifikasi-Nama Database
Tidak
Ekspresi reguler untuk mencocokkan nama database.
Misalnya,
*menunjukkan database dengan nama apa saja.Objek Identifikasi-Nama Tabel
Tidak
Ekspresi reguler untuk mencocokkan nama tabel.
Misalnya,
e[a-z]?.*menunjukkan tabel yang namanya huruf kecil dan dimulai dengan huruf e.Objek Identifikasi-Nama Kolom
Tidak
Ekspresi reguler untuk mencocokkan nama kolom.
Objek Identifikasi-Komentar Kolom
Tidak
Ekspresi reguler untuk mencocokkan komentar kolom.
Algoritma Masking
Ya
Algoritma penyamaran default untuk kolom sensitif yang diidentifikasi.
Deskripsi Aturan
Tidak
Deskripsi aturan identifikasi.
Skrip: Aturan identifikasi berbasis skrip Groovy mengidentifikasi kolom sensitif berdasarkan nama database, nama tabel, nama kolom, komentar kolom, atau tipe data.
PentingOutput dari skrip harus berupa nilai Boolean, yaitu
TrueatauFalse.Parameter
Diperlukan?
Deskripsi
Nama Aturan
Ya
Nama aturan identifikasi, yang tidak boleh melebihi 64 karakter panjangnya.
Status Aturan
Ya
Status aturan identifikasi. Nilai valid: Aktifkan dan Nonaktifkan.
Skrip Groovy
Ya
Skrip yang menentukan apakah kolom data merupakan kolom sensitif. Skrip ditulis berdasarkan spesifikasi sintaksis Groovy.
Algoritma Masking
Tidak
Algoritma penyamaran default untuk kolom sensitif yang diidentifikasi.
Deskripsi Aturan
Tidak
Deskripsi aturan identifikasi.
ODC menyediakan objek kolom bawaan untuk Anda referensikan dalam skrip Groovy. Tabel berikut menjelaskan atribut dalam objek kolom.
Atribut
Tipe
Deskripsi
schema
String
Nama database tempat kolom tersebut berada.
table
String
Nama tabel tempat kolom tersebut berada.
name
String
Nama kolom.
comment
String
Komentar pada kolom.
type
String
Tipe data kolom.
Berikut adalah beberapa contoh aturan identifikasi yang menggunakan skrip sebagai metode identifikasi:
Alamat:
if (("varchar".equals(column.type) || "char".equals(column.type))) { if (column.name.indexOf("address") >= 0) { return true; } if (column.comment != null && (column.comment.toLowerCase().indexOf("address") >= 0 || column.comment.indexOf("Address") >= 0 || column.comment.indexOf("Residence address") >= 0 || column.comment.indexOf("Location") >= 0)) { return true; } } return false;Nomor ponsel:
if (column.name.length() == 11 && ("varchar".equals(column.type) || "char".equals(column.type))) { if (column.name.indexOf("phone") >= 0 || column.name.indexOf("mobile") >= 0) { return true; } if (column.comment != null && (column.comment.toLowerCase().indexOf("phone") >= 0 || column.comment.indexOf("Phone number") >= 0 || column.comment.indexOf("mobile") >= 0 || column.comment.indexOf("Mobile number") >= 0)) { return true; } } return false;Nomor kartu identitas:
if (column.name.length() >= 15 && ("varchar".equals(column.type) || "char".equals(column.type))) { if (column.name.indexOf("id_number") >= 0 || column.name.indexOf("identity_card") >= 0) { return true; } if (column.comment != null && (column.comment.toLowerCase().indexOf("identity card") >= 0 || column.comment.indexOf("ID card number") >= 0)) { return true; } } return false;
Tambah aturan identifikasi
Contoh: Tambahkan aturan identifikasi untuk kolom mobile_phone dari tabel student di database odc_test sebagai administrator.
Di jendela kolaborasi proyek, pilih Proyek > Kolom Sensitif. Lalu klik Tambah Kolom Sensitif dan pilih Pindai untuk Menambahkan.

Di kotak dialog Pindai untuk Menambahkan Kolom Sensitif , klik Aturan Identifikasi dan pilih Kelola Aturan Identifikasi dari daftar drop-down.

Di kotak dialog Kelola Aturan Identifikasi, klik Buat Aturan Identifikasi.

Di panel Buat Aturan Identifikasi , tentukan nama, status, metode identifikasi, dan algoritma penyamaran aturan lalu klik Buat.

Misalnya, aturan identifikasi berbasis jalur
odc_test*.student.*a,*.*.mobile_phonemenentukan untuk mencocokkan kolommobile_phonedari tabelstudentdi databaseodc_test.basis data.Dalam daftar aturan identifikasi, Anda dapat melihat dan mengaktifkan aturan identifikasi yang telah ditambahkan.

Kelola aturan identifikasi
Pada halaman yang ditunjukkan pada gambar sebelumnya, klik Lihat, Edit, atau Hapus di kolom Tindakan aturan identifikasi untuk melihat, memodifikasi, atau menghapus aturan identifikasi.
Lihat algoritma penyamaran
Di jendela kolaborasi proyek, pilih Spesifikasi Keamanan > Algoritma Masking dan lihat algoritma penyamaran yang didukung oleh ODC.
Tabel berikut mencantumkan algoritma penyamaran yang didukung oleh ODC.
Algoritma | Data uji | Pratinjau hasil |
Mask semua (default sistem) | nilai uji | ***** |
Nama pribadi (karakter Cina) | 个人姓名 | **名 |
Nama pribadi (alfabet) | Personal Name | P** |
Nama panggilan | Nickname | N***e |
odc@oceanbase.com | o***@oceanbase.com | |
Alamat | Hangzhou, Zhejiang Province, China | Hangzhou, Z*** |
Nomor telepon | 13500000000 | 135******00 |
Nomor telepon tetap | 010-12345678 | **********78 |
Nomor sertifikat | 123456789 | 1*******9 |
Nomor kartu bank | 1234 5678 5678 1234 | ***************1234 |
Nomor pelat kendaraan | 浙AB1234 | 浙A**234 |
Nomor identifikasi unik perangkat | AB123456789CD | ****89CD |
Alamat IP | 10.123.456.789 | 10...* |
Alamat MAC | ab:cd:ef:gh:hi:jk | ab:*:*:*:*:* |
MD5 | default | c21f969b5f03d33d43e04f8f136e7682 |
SHA256 | default | 37a8eec1ce19687d132fe29051dca629d164e2c4958ba141d5f4133a33f0688f |
SHA512 | default | 1625cdb75d25d9f699fd2779f44095b6e320767f606f095eb7edab5581e9e3441adbb0d628832f7dc4574a77a382973ce22911b7e4df2a9d2c693826bbd125bc |
SM3 | default | 40c357923156504f734717d8b4f5623e75209e9572701f4b51ef2a03d9ced863 |
Pembulatan | 123.456 | 123 |
Pengosongan | default | - |
Default | abcd1234 | abc**234 |
Skenario
Kolom sensitif yang ditambahkan disamarkan di jendela SQL dan selama ekspor data serta perubahan data.
Skenario 1: Penyamaran data selama ekspor data
Contoh: Saat mengekspor data dari tabel student di database odc_test, data secara otomatis disamarkan.
Setelah mengekspor tabel
studentdengan mengirimkan tiket di konsol ODC, klik Lihat di kolom Tindakan tugas ekspor dalam daftar tugas ekspor.
Di panel Detail Tiket , klik Unduh di pojok kanan bawah.

Lihat tabel
studentyang diunduh di disk lokal Anda.
Skenario 2: Penyamaran data selama perubahan data
Contoh: Saat menyisipkan data ke tabel student, data secara otomatis disamarkan.
Di konsol ODC, ajukan tiket perubahan database untuk menyisipkan data ke dalam tabel
student.Di panel navigasi sisi kiri jendela SQL, temukan
odc_test database dan lihat data yang telah di-desensitisasi di tabel student.
Skenario 3: Penyamaran data di jendela SQL
Contoh: Saat menyisipkan data ke tabel student, data secara otomatis disamarkan.
Di jendela SQL, tulis pernyataan SQL untuk menyisipkan data ke dalam tabel
student.
Di tab hasil, Anda dapat melihat data yang telah di-desensitisasi dalam tabel
student.