All Products
Search
Document Center

PolarDB:Dynamic data masking

Last Updated:Aug 13, 2026

Topik ini memberikan ikhtisar fitur dynamic data masking yang disediakan oleh PolarProxy.

Prasyarat

Versi PolarProxy harus V2.4.12 atau lebih baru. Untuk informasi selengkapnya tentang cara melihat versi saat ini dan melakukan upgrade PolarProxy, lihat Minor version update.

Solusi penyamaran data

Jika Anda ingin memberikan otorisasi kepada pihak ketiga untuk membuat laporan, menganalisis data, melakukan aktivitas pengembangan dan pengujian, atau menjalankan operasi terkait database lainnya, Anda mungkin perlu memperoleh data pelanggan terbaru dari database di lingkungan produksi secara real time. Untuk menghindari pengungkapan informasi pribadi, data tersebut harus disembunyikan sebelum diberikan kepada pihak ketiga. Alibaba Cloud menyediakan dua solusi penyamaran data: dynamic data masking dan static data masking. PolarProxy menggunakan dynamic data masking.

Tabel 1. Perbandingan solusi penyamaran data

Solusi penyamaran data

Deskripsi

Keuntungan

Batasan

Dynamic data masking

Ketika aplikasi Anda mengirim permintaan kueri data, PolarDB menyembunyikan data sensitif yang dikueri sebelum mengembalikan data tersebut ke aplikasi.

Untuk mencapai hal ini, Anda perlu menentukan akun database, nama database, serta tabel atau kolom yang memerlukan penyamaran data sebelum data dikueri.

  • Anda tidak perlu mengubah aplikasi dalam sistem bisnis Anda. Hal ini mengurangi biaya.

  • Aplikasi Anda dapat mengkueri data real-time dari database produksi.

Dibandingkan dengan database cermin, performa kueri pada database produksi sedikit lebih rendah karena PolarProxy menyembunyikan data sensitif di database produksi secara real time.

Static data masking

PolarProxy mengekspor seluruh data dari database produksi ke database cermin, serta mengenkripsi atau menyembunyikan data sensitif selama proses ekspor.

Aplikasi Anda mengkueri data dari database cermin, bukan dari database produksi. Dengan demikian, penyamaran data tidak memengaruhi layanan yang memerlukan akses ke database produksi.

  • Untuk menyembunyikan data sensitif, Anda perlu mengembangkan serangkaian komponen dalam toolkit impor data. Hal ini menimbulkan biaya pengembangan yang tinggi.

  • Data di database cermin tidak mutakhir dibandingkan dengan data di database produksi.

Cara kerja

Setelah Anda mengonfigurasi aturan penyamaran data di Konsol PolarDB, konsol tersebut menuliskan aturan-aturan ini ke PolarProxy. Ketika aplikasi Anda terhubung ke database menggunakan akun yang ditentukan dalam aturan penyamaran data dan mengkueri kolom tertentu, PolarProxy menyembunyikan data yang dikueri dari database dan mengembalikan data yang telah disembunyikan tersebut ke client. 1

Gambar di atas menunjukkan aturan penyamaran data berikut:

  • Aturan penyamaran data hanya berlaku ketika Anda menggunakan akun testAcc untuk mengkueri data dari database.

  • PolarProxy hanya menyembunyikan data yang dikueri pada kolom name dan age.

Catatan

Jika suatu kolom dalam hasil kueri disembunyikan, semua nilai pada kolom tersebut akan disembunyikan. Misalnya, jika Anda menjalankan pernyataan SELECT * FROM t1 dan tabel t1 berisi kolom name dan age, nilai kedua kolom tersebut dalam hasil kueri akan disembunyikan.

Jika aplikasi Anda menggunakan akun testAcc untuk terhubung ke database dan mengkueri data pada kolom name, age, dan hobby dari suatu tabel, PolarProxy menyembunyikan data pada kolom name dan age, lalu mengembalikan data yang telah disembunyikan tersebut bersama dengan data yang tidak disembunyikan pada kolom hobby.

PolarProxy menggunakan metode berbeda untuk menyembunyikan tipe data yang berbeda. Tabel berikut menjelaskan metode penyamaran data tersebut.

Tipe data

Metode penyamaran data

Contoh

Tipe data integer: TINYINT, SMALLINT, MEDIUMINT, INT, dan BIGINT

PolarProxy mengembalikan nilai acak dalam format yang ditentukan oleh tipe data aslinya.

  • Nilai asli: 12345

  • Nilai yang disembunyikan (dipilih secara acak): 28175

Tipe data desimal: DECIMAL, FLOAT, dan DOUBLE

  • Nilai asli: 1.2345

  • Nilai yang disembunyikan (dipilih secara acak): 8.2547

Tipe data tanggal dan waktu: DATE, TIME, DATETIME, TIMESTAMP, dan YEAR

  • Nilai asli: 2021-01-01 00:00:00

  • Nilai yang disembunyikan (dipilih secara acak): 4926-12-13 17:23:07

Tipe data lainnya

PolarProxy mengganti data tersebut dengan tanda bintang (*).

  • Nilai asli: Elon Musk

  • Nilai yang disembunyikan: *********

Pertimbangan

  • Fitur dynamic data masking hanya berlaku untuk titik akhir kluster. Titik akhir kluster mencakup titik akhir kluster default dan titik akhir kluster kustom. Jika Anda menggunakan titik akhir utama untuk terhubung ke database dan mengkueri data, fitur dynamic data masking tidak akan berlaku. Untuk informasi selengkapnya tentang cara melihat titik akhir kluster, lihat View the endpoint and port number.

  • Jika hasil kueri berisi data yang harus disembunyikan dan ukuran satu baris melebihi 16 MB, sesi kueri akan ditutup.

    Sebagai contoh, Anda ingin mengkueri data pada kolom name dan description dari tabel person. Pada tabel ini, data sensitif pada kolom name harus disembunyikan, sedangkan ukuran data pada satu baris kolom description melebihi 16 MB. Dalam kasus ini, ketika Anda menjalankan pernyataan SELECT name, description FROM person, sesi kueri akan ditutup.

  • Jika kolom yang ingin Anda sembunyikan datanya digunakan sebagai nilai parameter input dalam suatu fungsi, penyamaran data tidak akan berlaku.

    Sebagai contoh, aturan penyamaran data dibuat untuk menyembunyikan data sensitif pada kolom name. Ketika Anda menjalankan pernyataan SELECT CONCAT(name, '') FROM person, aplikasi Anda tetap dapat membaca nilai asli dari kolom name.

  • Jika kolom yang ingin Anda sembunyikan datanya digunakan bersama operator UNION, penyamaran data mungkin tidak berlaku.

    Sebagai contoh, aturan penyamaran data dibuat untuk menyembunyikan data sensitif pada kolom name. Ketika Anda menjalankan pernyataan SELECT hobby FROM person UNION SELECT name FROM person, aplikasi Anda tetap dapat membaca nilai asli dari kolom name.

Aktifkan fitur dynamic data masking

Untuk informasi selengkapnya, lihat Manage data masking rules.

Lampiran: Dampak terhadap performa kluster

Fitur dynamic data masking memengaruhi performa kluster dalam skenario berikut.

Catatan

Dalam contoh ini, permintaan per detik (QPS) read-only dari kluster digunakan untuk menunjukkan perbedaan performa.

Skenario

Dampak terhadap performa

Akun Anda termasuk dalam aturan penyamaran data atau tidak

Kueri Anda mengenai aturan penyamaran data atau tidak

Tidak

Tidak

Penyamaran data tidak berlaku pada kueri yang dilakukan oleh akun Anda. Dengan demikian, performa kluster Anda tidak terpengaruh.

Ya

Tidak

PolarProxy hanya menganalisis data definisi kolom dalam set hasil dan tidak menyembunyikan data asli dalam hasil kueri.

Hal ini menyebabkan overhead performa sekitar 6%. Setelah fitur dynamic data masking diaktifkan, QPS read-only menurun sekitar 6%.

Ya

PolarProxy menganalisis data definisi kolom dalam set hasil dan menyembunyikan data asli dalam hasil kueri.

Dalam kasus ini, overhead performa bergantung pada ukuran set hasil. Semakin banyak baris dalam hasil kueri, semakin besar overhead performa yang terjadi.

Jika hasil kueri hanya mengembalikan satu baris, overhead performa sekitar 6% akan terjadi.