全部产品
Search
文档中心

PolarDB:Firewall SQL

更新时间:Nov 11, 2025

PolarDB PolarProxy menyediakan fitur firewall SQL yang dapat mengidentifikasi pernyataan SQL yang diizinkan dan diblokir setelah Anda mengonfigurasi aturan blacklist dan daftar putih. Topik ini menjelaskan fitur firewall SQL tersebut.

Catatan

Fitur firewall SQL berada dalam fase pemeliharaan dan tidak lagi menerima pembaruan fitur. Sebagai alternatif, gunakan fitur Pembatasan SQL di Database Autonomy Service (DAS).

Informasi latar belakang

Jika database Anda diakses secara ilegal, penyerang dapat memperoleh seluruh data di dalamnya. Bahkan dalam operasi O&M rutin sekalipun, eksekusi pernyataan DELETE tanpa klausa WHERE dapat mengakibatkan penghapusan tabel secara tidak sengaja.

Untuk mencegah operasi berisiko tinggi semacam itu, PolarProxy menyediakan fitur firewall SQL yang memungkinkan Anda mengonfigurasi aturan blacklist dan daftar putih guna mengizinkan atau memblokir pernyataan SQL. Gambar berikut menunjukkan cara kerja fitur firewall SQL.

Prasyarat

PolarDB PolarProxy versi V2.5.1 atau lebih baru. Untuk informasi lebih lanjut tentang cara melihat versi saat ini dan meningkatkan PolarProxy, lihat Manajemen versiRevision version.

Batasan

  • Setelah fitur firewall SQL diaktifkan, PolarProxy membuat sebuah database bernama database:proxy_auditing serta dua tabel bernama sql_list dan org_sql_list di kluster saat ini. Tabel sql_list menyimpan pernyataan SQL berparameter dalam aturan blacklist dan daftar putih, sedangkan tabel org_sql_list menyimpan pernyataan SQL dalam aturan blacklist. Setiap tabel dapat menyimpan hingga 500.000 pernyataan SQL.

  • Aturan yang pertama kali dibuat hanya berlaku untuk koneksi baru. Setelah dimodifikasi, aturan tersebut berlaku pada koneksi yang sudah ada setelah lima detik.

  • Pernyataan SQL dalam aturan blacklist atau daftar putih yang dibuat dalam mode SQL berparameter kustom atau mode SQL kustom tidak diblokir saat aturan dibuat, tetapi akan diblokir setelah aturan tersebut diterapkan.

  • Untuk akun dan titik akhir yang sama, Anda tidak dapat mengaktifkan aturan blacklist dan aturan daftar putih secara bersamaan.

  • Multi-pernyataan tidak didukung. Semua multi-pernyataan akan diblokir.

  • Pernyataan SQL yang tidak dapat diurai oleh PolarProxy dicatat dalam log audit firewall tetapi tidak diblokir. Misalnya, pernyataan SELECT yang mengandung kesalahan sintaksis tidak akan diblokir.

  • Pernyataan SQL dalam aturan blacklist atau daftar putih yang dibuat dalam mode SQL berparameter kustom atau mode SQL kustom tetap disimpan meskipun aturan tersebut dinonaktifkan atau dihapus. Jika aturan diaktifkan kembali, aturan tersebut tetap berlaku untuk akun yang sama. Untuk menghapus sepenuhnya aturan blacklist atau daftar putih, Anda dapat terhubung ke node primer dalam kluster menggunakan akun administrator super dan menghapus pernyataan SQL tersebut.

  • Aturan blacklist dan daftar putih hanya dapat memblokir perintah SQL umum (3) atau perintah PREPARE (22). Perintah lain tidak diblokir. Misalnya, setelah Anda terhubung ke kluster menggunakan command line MySQL, pernyataan USE db; dikonversi oleh command line MySQL menjadi perintah COM_INIT_DB(1), yang tidak diblokir.

Dampak terhadap kinerja

  • Setelah mengaktifkan fitur aturan blacklist, overhead kinerja kurang dari 10% akan terjadi.

  • Jika fitur aturan daftar putih diaktifkan dan tidak ada log peringatan yang dihasilkan, overhead kinerja sekitar 10% akan terjadi.

  • Jika log peringatan dihasilkan untuk semua pernyataan SQL yang dieksekusi, laju permintaan berkurang 20% hingga 30% dalam kondisi bisnis normal. Namun, tidak semua pernyataan SQL memicu log peringatan—hanya beberapa saja yang melakukannya. Oleh karena itu, dalam kondisi bisnis normal, fitur aturan blacklist atau daftar putih tidak berdampak signifikan terhadap laju permintaan.

Fitur aturan blacklist atau daftar putih

  • Blacklist rule feature: Anda dapat mengonfigurasi aturan blacklist untuk memblokir jenis tertentu atau pernyataan SQL tertentu. Ketika pernyataan SQL yang ditambahkan ke aturan blacklist dieksekusi, PolarProxy akan memblokirnya. Untuk informasi lebih lanjut, lihat Konfigurasi aturan blacklist.

  • Whitelist rule feature: Pernyataan SQL yang terkait dengan bisnis dilatih terlebih dahulu sebelum dapat diizinkan oleh aturan daftar putih. Setelah mode perlindungan diaktifkan, hanya pernyataan SQL yang ditambahkan ke aturan daftar putih yang diizinkan. Untuk informasi lebih lanjut, lihat Konfigurasi aturan daftar putih.