Transparent Data Encryption (TDE) mengenkripsi file database Anda di lapisan penyimpanan secara real time. Data dienkripsi sebelum ditulis ke disk dan didekripsi saat dibaca ke memori—aplikasi Anda tetap terhubung dan menjalankan kueri seperti biasa tanpa perlu mengubah kode.
Cara kerja TDE
TDE menggunakan algoritma Advanced Encryption Standard (AES) dengan kunci 256-bit. Enkripsi dan dekripsi terjadi di tingkat I/O: mesin database menangani kedua operasi tersebut secara transparan.
Manajemen kunci ditangani melalui Alibaba Cloud Key Management Service (KMS). Pilih salah satu dari dua jenis kunci sebelum mengaktifkan TDE:
| Jenis kunci | Dikelola oleh | Biaya | Paling cocok untuk |
|---|---|---|---|
| Service key | Alibaba Cloud (otomatis) | Tidak dikenai biaya | Pengaturan paling sederhana; tidak ada persyaratan kepatuhan terkait kepemilikan kunci |
| Custom key | Anda, melalui KMS | Berlaku biaya kunci KMS | Kontrol penuh atas siklus hidup kunci (rotasi, penonaktifan, penghapusan); kepatuhan regulasi |
Cakupan penerapan
Sebelum memulai, pastikan bahwa:
-
Kluster Anda memenuhi versi mesin minor minimum:
TDE tidak dapat diaktifkan untuk kluster serverless yang menjalankan MySQL 8.0.2.
Seri produk Mesin database Versi mesin minor minimum Edisi Kluster MySQL 5.6 5.6.1.0.21 MySQL 5.7 5.7.1.0.3 MySQL 8.0.1, MySQL 8.0.2 8.0.1.1.1 Edisi Standar MySQL 5.7 5.7.1.0.3 MySQL 8.0.1, MySQL 8.0.2 8.0.1.1.1 Kluster Multi-master (Limitless) MySQL 8.0.1 8.0.1.0.42 MySQL 8.0.2 8.0.2.0.6 -
Jika Anda berencana menggunakan custom key, Anda juga memerlukan:
-
Instans Alibaba Cloud KMS yang aktif
-
PolarDB yang telah diberi otorisasi untuk mengakses KMS (Otorisasi PolarDB untuk mengakses KMS)
-
Akun Alibaba Cloud atau Pengguna Resource Access Management (RAM) dengan izin
AliyunSTSAssumeRoleAccess
-
Penagihan
| Jenis biaya | Rincian |
|---|---|
| Penyimpanan | TDE tidak menambah ukuran file data. Tidak ada biaya penyimpanan tambahan. |
| Service key | Tidak dikenai biaya. |
| Custom key | Tidak ada biaya PolarDB. Berlaku biaya kunci KMS. |
Batasan
Tinjau batasan-batasan berikut sebelum mengaktifkan TDE:
-
Tidak dapat dikembalikan: TDE tidak dapat dinonaktifkan setelah diaktifkan.
-
Diperlukan restart kluster: Mengaktifkan TDE akan me-restart kluster, menyebabkan gangguan layanan singkat (sekitar 10 menit). Jadwalkan operasi ini pada jam sepi.
-
Dampak performa: Dalam skenario intensif I/O, enkripsi dan dekripsi mengonsumsi sejumlah kecil sumber daya CPU dan mungkin sedikit memengaruhi performa database.
-
Batasan serverless: TDE tidak dapat diaktifkan untuk kluster serverless yang menjalankan MySQL 8.0.2.
-
Risiko custom key: Jika custom key Anda menjadi tidak tersedia, kluster akan menjadi tidak tersedia pada restart berikutnya. Lihat Risiko custom key untuk detail selengkapnya.
-
Jaringan Basis Data Global (GDN): Mengaktifkan TDE pada kluster utama secara otomatis mengaktifkannya pada semua kluster sekunder. Semua kluster dalam GDN menggunakan kunci yang sama, yang berada di wilayah kluster utama. Anda tidak dapat mengaktifkan TDE pada kluster sekunder secara independen, dan wilayah kunci tidak dapat diubah.
Aktifkan TDE
Mengaktifkan TDE akan me-restart kluster dan tidak dapat dibatalkan. Lanjutkan dengan hati-hati.
-
Masuk ke Konsol PolarDB. Di panel navigasi kiri, klik Settings and Management > Security. Pada tab TDE Settings, aktifkan sakelar TDE Status.

-
Pada kotak dialog, pilih jenis kunci:
-
Service Key (Dibuat Otomatis oleh Alibaba Cloud): Klik OK. Tidak diperlukan konfigurasi tambahan.
-
Gunakan Custom Key yang Ada: Pilih kunci dari daftar drop-down dan klik OK. Jika tidak ada kunci yang terdaftar, buat kunci di KMS terlebih dahulu.
Saat membuat kunci KMS untuk TDE, pilih salah satu algoritma enkripsi
Aliyun_AES_256atauAliyun_SM4. TDE hanya mendukung kedua algoritma ini.
-
-
Tunggu hingga TDE selesai diaktifkan. Proses ini memakan waktu sekitar 10 menit dan akan me-restart kluster.
(Opsional) Enkripsi otomatis tabel baru
Untuk mengenkripsi semua tabel yang dibuat setelah TDE diaktifkan, aktifkan sakelar Advanced Settings saat mengaktifkan TDE.
Pengaturan ini tersedia pada:
-
PolarDB for MySQL 8.0 dengan versi mesin minor 8.0.1.1.15 atau lebih baru
-
PolarDB for MySQL 5.7 dengan versi mesin minor 5.7.1.0.35 atau lebih baru
Enkripsi tabel yang sudah ada
Mengaktifkan TDE tidak secara otomatis mengenkripsi tabel yang sudah ada. Jalankan ALTER TABLE untuk mengenkripsinya secara manual.
Tabel akan terkunci dan tidak dapat dibaca atau ditulis selama eksekusi ALTER TABLE.
| Versi database | Enkripsi tabel | Decrypt table |
|---|---|---|
| MySQL 5.6 | ALTER TABLE <table_name> BLOCK_FORMAT=ENCRYPTED; |
ALTER TABLE <table_name> BLOCK_FORMAT=DEFAULT; |
| MySQL 5.7, MySQL 8.0 | ALTER TABLE <table_name> ENCRYPTION = 'Y'; |
ALTER TABLE <table_name> ENCRYPTION = 'N'; |
Verifikasi status enkripsi
Jalankan SHOW CREATE TABLE <table_name>; untuk memeriksa apakah suatu tabel telah dienkripsi.
-
MySQL 5.7, MySQL 8.0: Tabel dienkripsi jika output berisi
ENCRYPTION='Y'. -
MySQL 5.6: Tabel dienkripsi jika output berisi
BLOCK_FORMAT=ENCRYPTED.
Risiko custom key
Saat menggunakan custom key, ketersediaan kunci secara langsung menentukan ketersediaan kluster. Kluster akan menjadi tidak tersedia jika salah satu kondisi berikut terjadi:
-
Kunci dinonaktifkan di KMS
-
Penghapusan kunci dijadwalkan di KMS
-
Materi kunci dihapus di KMS
-
Otorisasi PolarDB untuk mengakses KMS dicabut
FAQ
Apa dampak mengaktifkan TDE terhadap bisnis saya?
Mengaktifkan TDE akan me-restart kluster, yang menyebabkan gangguan layanan singkat. Jadwalkan operasi ini pada jam sepi. Untuk beban kerja intensif I/O, harapkan overhead performa kecil akibat operasi enkripsi dan dekripsi.
Masalah keamanan apa yang diatasi oleh TDE?
TDE melindungi data saat disimpan di disk. TDE mencegah pengguna tidak sah membaca file database secara langsung dari penyimpanan—misalnya, jika media fisik dicuri atau file penyimpanan diakses di luar mesin database. Perlindungan ini sepenuhnya transparan bagi aplikasi.
Bisakah saya mewajibkan Pengguna RAM untuk mengaktifkan TDE saat membuat kluster?
Ya. Konfigurasikan kebijakan RAM untuk mewajibkan pengaktifan TDE saat Pengguna RAM membuat kluster melalui konsol atau API.
Langkah selanjutnya
Referensi API
| API | Deskripsi |
|---|---|
| DescribeDBClusterTDE | Kueri pengaturan TDE untuk kluster PolarDB |
| DescribeUserEncryptionKeyList | Daftar custom key untuk kluster PolarDB |
| CheckKMSAuthorized | Periksa apakah kunci KMS tersedia |
| ModifyDBClusterTDE | Aktifkan TDE untuk kluster PolarDB |