Topik ini menjelaskan fitur PolarDB always-confidential yang disediakan oleh Proksi Polar di PolarDB.
Prasyarat
Versi Proksi Polar di PolarDB adalah 2.8.36 atau lebih baru. Untuk informasi tentang cara melihat atau memperbarui versi Proksi Polar Anda, lihat Manajemen Versi Revisi.
Informasi Latar Belakang
Persyaratan regulasi dan standar industri saat ini menuntut adopsi langkah-langkah keamanan yang kuat yang mencakup seluruh siklus hidup data. Penguatan keamanan pihak ketiga tradisional serta enkripsi berbasis klien tidak lagi cukup karena kekurangan dalam hal biaya, adaptasi arsitektur, dan performa database. Dalam konteks ini, database yang mendukung enkripsi ujung-ke-ujung semakin populer di seluruh industri. PolarDB juga menyediakan PolarDB always-confidential sebagai jawaban atas kebutuhan tersebut.
Fitur ini memberikan keunggulan terbaiknya dalam skenario berikut:
Menyimpan data Anda di lingkungan yang tidak tepercaya: Skenario ini mencakup penyimpanan data Anda di cloud atau pusat data lokal pelanggan Anda, yang dapat mengakibatkan akses tidak sah oleh penyedia layanan cloud dan personel O&M organisasi Anda dan pelanggan Anda.
Menggunakan layanan manajemen data oleh penyedia pihak ketiga: Ini dapat mengekspos rahasia bisnis Anda kepada penyedia layanan. Hal ini sangat berisiko jika data Anda mencakup data sensitif seperti informasi identifikasi pribadi dan data genetik.
Berbagi data Anda dengan organisasi lain: Skenario ini mencakup manajemen risiko kolaboratif dan penyediaan layanan internasional, di mana organisasi yang terlibat dibatasi oleh persyaratan kepatuhan data dan tidak dapat berbagi data teks biasa secara langsung. Mereka juga mencakup skenario di mana Anda melakukan pemasaran dengan perusahaan lain dan ingin melindungi data Anda karena hubungan kompetitif.
Fitur
Semua operator SQL didukung. Anda dapat menyesuaikan aplikasi Anda dengan fitur ini tanpa modifikasi kode. Anda hanya perlu sedikit konfigurasi untuk aplikasi Anda beralih ke EncJDBC, tanpa mengubah kode bisnis aplikasi. Untuk informasi lebih lanjut, lihat Integrasi EncJDBC.
Hasil kueri dienkripsi, memastikan keamanan akun database dan data bisnis Anda. Anda dapat mengonfigurasi aturan untuk mengenkripsi hanya data tertentu. Saat PolarDB always-confidential meminta data yang ditentukan, ia melakukan enkripsi menggunakan kunci master kustom (CMK) Anda, sehingga data hanya terlihat oleh pengguna yang memiliki kunci. Dengan cara ini, bahkan dalam kasus kebocoran akun database, penyusup tidak dapat melihat data dalam hasil kueri. Bahkan personel pengembangan dan O&M database Anda tidak dapat memperoleh hasil kueri dalam teks biasa.
Anda dapat menentukan CMK yang digunakan untuk mengenkripsi data. Anda dapat menggunakan layanan manajemen kunci milik sendiri atau pihak ketiga dan secara dinamis meneruskan kunci ke klien database. Kunci-kunci yang hanya tersedia bagi pengguna yang berwenang berlaku dalam kueri melalui mekanisme distribusi aman dan secara otomatis dicabut setelah digunakan, mencegah kemungkinan pencurian.
Kinerja hanya sedikit menurun saat PolarDB always-confidential diaktifkan. Performa pemrosesan data dengan PolarDB always-confidential diaktifkan berbanding terbalik dengan jumlah kolom data yang dienkripsi. Semakin banyak data terenkripsi yang terlibat dalam kueri, semakin rendah performanya. Dalam pengujian TPC-C, ketika 20%, 50%, dan 100% dari kolom dienkripsi, performa masing-masing adalah 93%, 86%, dan 79% dari saat PolarDB always-confidential tidak diaktifkan. Untuk informasi lebih lanjut tentang hasil pengujian performa, lihat Uji Performa.
Skenario
Kami mengembangkan PolarDB always-confidential untuk menyediakan kerangka kerja dan produk database generasi berikutnya dengan kemampuan memastikan kerahasiaan dan integritas data. Dengan desain yang optimal, database ini menawarkan fitur keamanan tinggi tanpa mengorbankan performa, stabilitas, dan efisiensi biaya.
Berikut adalah beberapa skenario tipikal untuk PolarDB always-confidential:
Mengenkripsi data yang dikirimkan dari aplikasi ke database
Dalam sebagian besar kasus, penyedia aplikasi adalah pemilik data, yang umumnya ingin mencegah layanan database dan personel O&M-nya mengakses data bisnis.
Mengenkripsi data yang dikirimkan dari pengguna ke aplikasi
Dalam beberapa aplikasi untuk penggunaan pribadi, sebagian data seperti yang terkait dengan kesehatan dan keuangan, dimiliki oleh pengguna, yang umumnya mengharapkan aplikasi tidak dapat mengakses data itu sendiri dalam teks biasa saat mengelola dan menganalisis data mereka.
Berbagi data terenkripsi secara aman dan andal
Kunci yang digunakan untuk enkripsi hanya tersedia bagi pemilik data. Ketika pemilik data perlu berbagi data dengan orang lain, mereka ingin melakukannya tanpa mengekspos kunci, sehingga memenuhi persyaratan kepatuhan.
Keterbatasan
Aturan enkripsi tidak berlaku pada titik akhir utama. Anda perlu menggunakan titik akhir kluster atau titik akhir kluster kustom.
Fitur PolarDB always-confidential hanya mendukung perintah
COM_QUERY. Jenis perintah lain sepertiCOM_STMT_PREPAREtidak didukung. EncJDBC hanya mendukung Protokol Teks. Protokol Biner tidak didukung. Operasi yang memanfaatkan pernyataan yang disiapkan selalu diselesaikan melalui kueri Protokol Teks.PolarDB always-confidential dan masking dinamis tidak dapat diaktifkan secara bersamaan.
Jika ada aturan masking dinamis, untuk mengaktifkan PolarDB always-confidential, Anda perlu menghapus semua aturan masking yang ada dan membuat aturan baru yang jenisnya adalah enkripsi.
CMK tidak dapat diubah setelah ditentukan. Seluruh kluster menggunakan CMK yang sama.
Jika Anda melewati SecureGW dan langsung terhubung ke kernel MySQL asli, fitur enkripsi tidak berlaku. Kami menyarankan Anda untuk menghindari hal ini. Untuk meminimalkan dampak dari akses tidak sah, kami juga menyarankan Anda untuk mengaktifkan fitur keamanan lainnya seperti audit log.
Penggunaan
Untuk informasi lebih lanjut, lihat Kelola aturan enkripsi.