All Products
Search
Document Center

Data Security Center:Enkripsi kolom

Last Updated:Apr 30, 2026

Fitur enkripsi kolom dari Data Security Center (DSC) mengenkripsi kolom tertentu di database seperti ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, PolarDB for MySQL, PolarDB for PostgreSQL, PolarDB for PostgreSQL (Oracle Compatible), dan PolarDB-X 2.0. Fitur ini mencegah pengguna yang tidak sah mengakses data sensitif dalam bentuk teks biasa melalui perangkat lunak platform cloud atau alat koneksi database, sehingga membantu meredam ancaman keamanan internal maupun eksternal.

Manfaat

  • Tidak perlu perubahan aplikasi: Driver client secara otomatis menangani enkripsi dan dekripsi, sehingga prosesnya transparan bagi aplikasi Anda dan mengurangi biaya integrasi.

  • Beban performa rendah: Uji benchmark TPC-C menunjukkan bahwa performa mencapai lebih dari 93% operasi teks biasa.

  • Perlindungan kriptografi end-to-end: Data kritis selalu dikembalikan dalam bentuk ciphertext. Bahkan jika kredensial akun database dikompromikan, data tetap aman.

  • Dukungan SQL lengkap: Semua fungsi kueri SQL native didukung pada data terenkripsi tanpa batasan fungsional.

  • Pengelolaan kunci yang aman: Anda dapat menentukan kunci mana yang digunakan. Kunci segera dihapus saat layanan dihentikan serta mendukung pembaruan dan rotasi kunci.

Konsep utama

Enkripsi kolom di DSC terdiri dari dua bagian utama: pengaturan enkripsi dan pengelolaan izin akun. Pengaturan enkripsi menentukan algoritma enkripsi, metode, dan cakupannya, termasuk instansiasi basis data, database, tabel, dan kolom. Pengelolaan izin akun mengontrol akun database mana yang dapat mengakses data terenkripsi dan pada tingkat izin apa.

  • Algoritma enkripsi: Enkripsi kolom menggunakan algoritma enkripsi standar industri SM4-128-GCM, AES-128-GCM, dan AES-256-GCM untuk mengenkripsi data di kolom yang ditentukan.

  • Metode enkripsi: Enkripsi kolom mendukung dua metode untuk mengelola kunci enkripsi pada database yang ditentukan: local key dan KMS key.

    • Local key: Kunci enkripsi dihasilkan dan disimpan di lingkungan lokal Anda.

    • KMS key (Direkomendasikan): Gunakan Key Management Service (KMS) untuk menyimpan kunci enkripsi untuk database yang ditentukan. DSC mendukung penggunaan Customer Master Key yang Anda buat dan kelola di KMS. Untuk informasi lebih lanjut tentang jenis kunci, lihat Jenis kunci.

  • Izin akun:

    Akun adalah akun database yang diambil dari instansiasi ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, PolarDB for MySQL, PolarDB for PostgreSQL, PolarDB for PostgreSQL (Oracle Compatible), dan PolarDB-X 2.0 yang telah Anda otorisasi agar DSC dapat mengaksesnya.

    Tabel berikut menjelaskan izin yang tersedia.

    Izin

    Deskripsi

    Ciphertext Permission (JDBC Decryption)

    Secara default, akun dengan izin ini dapat mengakses ciphertext dari kolom terenkripsi. Akun tersebut dapat menggunakan SDK dan driver client always-confidential untuk mendekripsi data dengan local key atau KMS key guna melihat teks biasanya.

    Ciphertext Permission (No Decryption Permission)

    Akun hanya dapat mengakses ciphertext di kolom terenkripsi. Akun tidak dapat mendekripsi data dengan cara apa pun.

    Plaintext Permissions

    Setelah enkripsi kolom diaktifkan untuk suatu database, akun dengan izin ini melewati pengaturan enkripsi dan dapat langsung mengakses data teks biasa di kolom terenkripsi.

Kuota dan batasan

Jenis database

Versi

Algoritma enkripsi

Metode enkripsi

Izin

ApsaraDB RDS for MySQL

Versi mesin utama adalah MySQL 5.7 atau MySQL 8.0, dan versi mesin minor adalah 20240731 atau lebih baru.

  • AES-128-GCM.

  • AES-256-GCM: Didukung hanya jika versi mesin minor adalah 20241231 atau lebih baru.

  • SM4-128-GCM: Didukung hanya jika versi mesin minor adalah 20241231 atau lebih baru.

  • local key.

  • KMS key: Didukung hanya jika versi mesin minor adalah 20241231 atau lebih baru dan tipe penyimpanan adalah cloud disk.

  • Ciphertext permission (no decryption permission): Didukung hanya saat menggunakan local key. Ini adalah izin default.

  • Ciphertext permission (JDBC decryption): Ini adalah izin default saat menggunakan KMS key.

  • Plaintext permission.

ApsaraDB RDS for PostgreSQL

Versi mesin utama adalah PostgreSQL 16, dan versi mesin minor harus 20241230 atau lebih baru.

AES-256-GCM.

local key.

  • Ciphertext permission (JDBC decryption) (Default).

  • Plaintext permission.

PolarDB for MySQL

Versi mesin utama adalah MySQL 5.7 atau MySQL 8.0, dan versi proksi database harus 2.8.36 atau lebih baru.

Penting

Jika Anda mengonfigurasi kebijakan enkripsi kolom untuk kluster PolarDB for MySQL, Anda harus menggunakan titik akhir kluster read/write untuk terhubung ke kluster tersebut. Jika Anda menggunakan titik akhir utama, kebijakan enkripsi kolom tidak akan berlaku. Untuk informasi lebih lanjut, lihat Konfigurasi database proxy dan Mengelola titik akhir.

AES-128-GCM.

local key.

PolarDB for PostgreSQL

Versi mesin utama adalah PostgreSQL 14, dan versi database adalah 2.0.14.15.31.0 atau lebih baru.

AES-256-GCM.

local key.

PolarDB for PostgreSQL (Oracle Compatible)

Hanya versi kompatibel sintaks Oracle 2.0 yang didukung. Versi mesin utama adalah PostgreSQL 14, dan versi database adalah 2.0.14.15.31.0 atau lebih baru.

AES-256-GCM.

local key.

PolarDB-X 2.0

Seri harus Edisi Perusahaan. Versi database harus polardb-2.5.0_5.4.20-20250714 atau lebih baru.

  • AES-128-GCM.

  • AES-256-GCM: Didukung hanya jika versi database adalah polardb-2.5.0_5.4.21-20260414 atau lebih baru.

  • SM4-128-GCM.

  • local key.

  • KMS key: Didukung hanya jika versi database adalah polardb-2.5.0_5.4.21-20260414 atau lebih baru.

Penagihan

DSC menyediakan kuota gratis untuk satu kolom terenkripsi. Untuk mengenkripsi lebih banyak kolom, Anda harus mengaktifkan layanan Column Encryption dan membeli jumlah number of encrypted columns yang mencukupi. Layanan ini berbasis langganan. Untuk informasi lebih lanjut, lihat Penagihan.

Jika Anda mengatur encryption method menjadi KMS key dalam konfigurasi enkripsi kolom Anda, KMS akan dikenai biaya untuk hosting kunci. Untuk informasi lebih lanjut, lihat Penagihan Produk.

Ikhtisar proses

Alur kerja enkripsi kolom

Gambar berikut menunjukkan alur kerja untuk mengonfigurasi enkripsi kolom untuk suatu database. Untuk informasi lebih lanjut, lihat Konfigurasi enkripsi kolom untuk database.

Mengakses data terenkripsi

Setelah Anda mengonfigurasi enkripsi kolom, ketika akun database dengan izin ciphertext melakukan kueri pada kolom terenkripsi, database hanya mengembalikan ciphertext. Anda kemudian dapat mendekripsi data tersebut di sisi client untuk mendapatkan teks biasa. Proses ini memastikan bahwa data tetap terenkripsi selama transmisi antara client dan database.

Penggunaan client

Alibaba Cloud menyediakan driver client always-confidential untuk Java dan Go. Anda dapat menggunakan akun database dengan ciphertext permission (JDBC decryption) untuk mendekripsi dan mengakses data teks biasa di kolom terenkripsi database target.

Bahasa

Jenis database

Dokumentasi

Java

  • ApsaraDB RDS for MySQL

  • ApsaraDB RDS for PostgreSQL

  • PolarDB for MySQL

  • PolarDB for PostgreSQL

  • PolarDB for PostgreSQL (Oracle Compatible)

  • PolarDB-X 2.0

Integrasikan EncJDBC (Mendukung dekripsi dengan local key dan KMS key)

Go

  • ApsaraDB RDS for MySQL

  • PolarDB for MySQL

  • PolarDB-X 2.0

Integrasikan driver GoLang (Hanya mendukung dekripsi dengan local key)