Memahami enkripsi di MySQL

Selesai

Data saat transit

Azure Database for MySQL mendukung koneksi terenkripsi menggunakan TLS 1.2. Protokol ini diaktifkan secara default dan dikelola oleh parameter server tls_version . Parameter ini memungkinkan Anda menerapkan versi TLS minimum yang diizinkan server. Anda dapat memilih lebih dari satu versi, misalnya jika Anda ingin mengizinkan TLS 1.2 dan 1.3. Jika Anda mengubah parameter ini, Anda harus menghidupkan ulang server agar perubahan dapat diterapkan.

Screenshot showing the server parameter tls_version page.

Jika aplikasi klien Anda tidak mendukung koneksi terenkripsi, Anda harus menonaktifkan koneksi terenkripsi di Azure Database for MySQL. Di portal Azure, navigasikan ke server MySQL Anda, dan di bawah Pengaturan pilih Parameter server. Di kotak pencarian, masukkan require_secure_transport. Parameter ini menentukan apakah koneksi klien harus menggunakan koneksi aman, yaitu, SSL melalui TCP/IP atau koneksi yang menggunakan file soket di Unix, atau memori bersama di Windows. Jika aplikasi klien Anda tidak mendukung koneksi terenkripsi, atur require_secure_transport ke NONAKTIF.

Catatan

Jika Anda mengatur require_secure_transport ke NONAKTIF, tetapi klien terhubung dengan koneksi terenkripsi, itu masih akan diterima.

Untuk menggunakan koneksi terenkripsi dengan aplikasi klien Anda, unduh sertifikat SSL publik di portal Azure. Navigasi ke server MySQL Anda dan dari menu sebelah kiri pilih Jaringan. Dari menu atas, pilih Unduh Sertifikat SSL. Untuk memungkinkan aplikasi terhubung dengan aman ke database melalui SSL, simpan file sertifikat ke lingkungan lokal Anda atau lingkungan klien tempat aplikasi Anda dihosting.

Data tidak aktif

Enkripsi data tidak aktif didukung di mesin penyimpanan InnoDB. Enkripsi diatur pada tingkat ruang tabel dan InnoDB mendukung enkripsi untuk ruang tabel berikut: file per tabel, umum, dan sistem. Untuk MySQL versi 8.0, pastikan parameter server default_table_encryption diatur ke AKTIF ( nonaktif secara default). Untuk tabel yang dienkripsi, Anda juga dapat mengenkripsi log fase pengulangan. Opsi ini dinonaktifkan secara default.

Untuk mengenkripsi tabel dalam file per tablespace tabel:

CREATE TABLE myEncryptedTable (myID INT) ENCRYPTION = 'Y';

Jika Anda kemudian mengubah tabel, klausul enkripsi harus ditentukan:

ALTER TABLE myEncryptedTable ENCRYPTION = 'Y';

Azure Database for MySQL mendukung enkripsi data tidak aktif secara default, menggunakan kunci terkelola Microsoft. Data dan cadangan selalu dienkripsi di disk, dan hal ini tidak dapat dinonaktifkan.