全部产品
Search
文档中心

PolarDB:Penyembunyian data dinamis

更新时间:Jul 03, 2025

Topik ini memberikan gambaran umum tentang fitur penyembunyian data dinamis yang disediakan oleh PolarProxy.

Prasyarat

Versi PolarProxy harus V2.4.12 atau yang lebih baru. Untuk informasi lebih lanjut tentang cara memeriksa versi saat ini dan memperbarui PolarProxy, lihat Pembaruan Versi Minor.

Solusi penyembunyian data

Jika Anda ingin mengizinkan pihak ketiga untuk membuat laporan, menganalisis data, melakukan kegiatan pengembangan dan pengujian, atau menjalankan operasi lain terkait database, Anda mungkin perlu mendapatkan data pelanggan terbaru dari database di lingkungan produksi secara real-time. Untuk menghindari pengungkapan informasi pribadi, data harus disembunyikan sebelum diberikan kepada pihak ketiga. Alibaba Cloud menyediakan solusi penyembunyian data berikut: penyembunyian data dinamis dan penyembunyian data statis. PolarProxy menggunakan penyembunyian data dinamis.

Tabel 1. Perbandingan Solusi Penyembunyian Data

Solusi penyembunyian data

Deskripsi

Keuntungan

Batasan

Penyembunyian data dinamis

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

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

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

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

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

Penyembunyian data statis

PolarProxy mengekspor semua data dalam database produksi ke database cermin, dan mengenkripsi atau menyembunyikan data sensitif selama proses ekspor.

Aplikasi Anda mengkueri data dari database cermin alih-alih database produksi. Akibatnya, penyembunyian data tidak memengaruhi layanan yang memerlukan akses ke database produksi.

  • Untuk menyembunyikan data sensitif, Anda perlu mengembangkan satu set komponen dalam toolkit impor data. Ini menimbulkan biaya pengembangan yang tinggi.

  • Data dalam database cermin tidak mutakhir dengan data dalam database produksi.

Cara kerjanya

Setelah Anda mengonfigurasi aturan penyembunyian data di konsol PolarDB, konsol menulis aturan tersebut ke PolarProxy. Ketika aplikasi Anda terhubung ke database menggunakan akun yang ditentukan dalam aturan penyembunyian data dan mengkueri kolom tertentu, PolarProxy menyembunyikan data yang dikueri dari database dan mengembalikan data yang telah disembunyikan ke klien. 1

Gambar di atas menunjukkan aturan penyembunyian data berikut:

  • Aturan penyembunyian data berlaku hanya jika Anda menggunakan akun testAcc untuk mengkueri data dari database.

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

Catatan

Jika sebuah kolom dalam hasil kueri disembunyikan, semua nilai kolom tersebut akan disembunyikan. 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 di kolom name, age, dan hobby dari sebuah tabel, PolarProxy menyembunyikan data di kolom name dan age dan mengembalikan data yang telah disembunyikan bersama dengan data yang tidak disembunyikan di kolom hobby.

PolarProxy menggunakan metode berbeda untuk menyembunyikan jenis data yang berbeda. Tabel berikut menjelaskan metode penyembunyian data.

Tipe Data

Metode Penyembunyian Data

Contoh

Tipe Data Integer: TINYINT, SMALLINT, MEDIUMINT, INT, dan BIGINT

PolarProxy mengembalikan nilai acak dalam format yang didefinisikan dalam tipe data data mentah.

  • Nilai Mentah: 12345

  • Nilai yang Disembunyikan (Dipilih Secara Acak): 28175

Tipe Data Desimal: DECIMAL, FLOAT, dan DOUBLE

  • Nilai Mentah: 1.2345

  • Nilai yang Disembunyikan (Dipilih Secara Acak): 8.2547

Tipe Data Tanggal dan Waktu: DATE, TIME, DATETIME, TIMESTAMP, dan YEAR

  • Nilai Mentah: 2021-01-01 00:00:00

  • Nilai yang Disembunyikan (Dipilih Secara Acak): 4926-12-13 17:23:07

Tipe Data Lainnya

PolarProxy mengganti data dengan tanda bintang (*).

  • Nilai Asli: Elon Musk

  • Nilai yang Disembunyikan: *********

Pertimbangan

  • Fitur penyembunyian data dinamis hanya berlaku untuk titik akhir kluster. Titik akhir kluster terdiri dari titik akhir kluster default dan titik akhir kluster kustom. Jika Anda menggunakan titik akhir utama untuk terhubung ke database dan mengkueri data dari database, fitur penyembunyian data dinamis tidak berlaku. Untuk informasi lebih lanjut tentang cara melihat titik akhir kluster, lihat Lihat Titik Akhir dan Nomor Port.

  • 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 di kolom name dan description dari tabel person. Dalam tabel ini, data sensitif di kolom name harus disembunyikan. Ukuran data di baris kolom description melebihi 16 MB. Dalam hal ini, ketika Anda menjalankan pernyataan SELECT name, description FROM person, sesi kueri akan ditutup.

  • Jika kolom tempat Anda ingin menyembunyikan data sensitif digunakan sebagai nilai parameter input dalam fungsi, penyembunyian data tidak berlaku.

    Sebagai contoh, aturan penyembunyian data dibuat untuk menyembunyikan data sensitif di kolom name. Ketika Anda menjalankan pernyataan SELECT CONCAT(name, '') FROM person, aplikasi Anda masih dapat membaca nilai mentah dari kolom name.

  • Jika kolom tempat Anda ingin menyembunyikan data sensitif digunakan bersama dengan operator UNION, penyembunyian data mungkin tidak berlaku.

    Sebagai contoh, aturan penyembunyian data dibuat untuk menyembunyikan data sensitif di kolom name. Ketika Anda menjalankan pernyataan SELECT hobby FROM person UNION SELECT name FROM person, aplikasi Anda masih dapat membaca nilai mentah dari kolom name.

Mengaktifkan fitur penyembunyian data dinamis

Untuk informasi lebih lanjut, lihat Kelola Aturan Penyembunyian Data.

Lampiran: Dampak pada kinerja kluster

Fitur penyembunyian data dinamis memengaruhi kinerja kluster dalam skenario berikut.

Catatan

Dalam contoh ini, laju permintaan baca saja per detik (QPS) kluster digunakan untuk menunjukkan perbedaan kinerja.

Skenario

Dampak pada kinerja

Apakah akun Anda termasuk dalam aturan penyembunyian data

Apakah kueri Anda memenuhi aturan penyembunyian data

Tidak

Tidak

Penyembunyian data tidak berlaku pada kueri yang dilakukan oleh akun Anda. Dengan cara ini, kinerja kluster Anda tidak terpengaruh.

Ya

Tidak

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

Ini menyebabkan overhead kinerja sekitar 6%. Setelah fitur penyembunyian data dinamis diaktifkan, QPS baca saja menurun sekitar 6%.

Ya

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

Dalam hal ini, overhead kinerja didasarkan pada ukuran set hasil. Semakin banyak baris dalam hasil kueri, semakin besar overhead kinerja.

Jika hasil kueri dari satu baris dikembalikan, overhead kinerja sekitar 6% terjadi.