Mengamankan database MySQL dengan izin pengguna terbatas

Mengamankan database MySQL dengan izin pengguna terbatas

MySQL adalah salah satu sistem manajemen basis data relasional open-source yang paling populer yang digunakan oleh pengembang di seluruh dunia. Namun, dengan popularitasnya muncul risiko ancaman keamanan yang signifikan seperti serangan injeksi SQL. Oleh karena itu, mengamankan basis data MySQL Anda sangat penting untuk melindungi data sensitif dan mencegah akses yang tidak sah. Salah satu cara yang efektif untuk melakukan ini adalah dengan menerapkan izin pengguna terbatas.

Izin Pengguna Terbatas membantu membatasi akses ke data dalam database dengan memberikan hak istimewa khusus kepada pengguna individu. Dengan hanya memberikan hak istimewa yang diperlukan kepada pengguna, Anda dapat mencegah mereka melakukan tindakan berbahaya pada database. Di artikel ini, kami akan mengeksplorasi cara mengamankan database MySQL Anda dengan izin pengguna terbatas.

Memahami Izin Pengguna MySQL

Izin Pengguna MySQL ditentukan oleh serangkaian hak istimewa yang menentukan tindakan apa yang dapat dilakukan pengguna pada database. Beberapa hak istimewa umum meliputi:

  • PILIH: Hak istimewa ini memungkinkan pengguna untuk mengambil data dari tabel.
  • MENYISIPKAN: Hak istimewa ini memungkinkan pengguna untuk menambahkan data baru ke tabel.
  • MEMPERBARUI: Hak istimewa ini memungkinkan pengguna untuk memodifikasi data yang ada dalam tabel.
  • MENGHAPUS: Hak istimewa ini memungkinkan pengguna untuk menghapus data dari tabel.
  • Opsi hibah: Hak istimewa ini memungkinkan pengguna untuk memberikan atau mencabut hak istimewa dari pengguna lain.

Membuat pengguna dengan izin terbatas

Untuk membuat pengguna baru dengan izin terbatas, ikuti langkah -langkah ini:

  1. Hubungkan ke database MySQL Anda menggunakan klien MySQL seperti MySQL Workbench atau alat baris perintah MySQL.

    Jalankan perintah berikut untuk membuat pengguna baru:

    Buat pengguna 'nama pengguna'@'localhost' yang diidentifikasi oleh 'kata sandi';
    1Buat pengguna 'nama pengguna'@'localhost' yang diidentifikasi oleh 'kata sandi';

    Mengganti nama belakang Dan kata sandi dengan nama pengguna dan kata sandi yang Anda inginkan.

  2. Hibah hak istimewa khusus untuk pengguna baru menggunakan perintah berikut: hibah pilih, masukkan, perbarui di database_name.Table_name to 'username'@'localhost';
    1Grant Pilih, Sisipkan, Perbarui di Database_name.Table_name to 'username'@'localhost';

    Mengganti database_name Dan table_name dengan database dan nama tabel yang sesuai. Perintah ini memberikan PILIH, MENYISIPKAN, Dan MEMPERBARUI hak istimewa kepada pengguna untuk tabel yang ditentukan.

  3. Untuk mencabut hak istimewa dari pengguna, gunakan perintah berikut: Revoke Privilege_name di database_name.table_name dari 'nama pengguna'@'localhost';
    1Revoke Privilege_name di database_name.table_name dari 'nama pengguna'@'localhost';

    Mengganti Privilege_name dengan nama hak istimewa yang sesuai dan database_name Dan table_name dengan database dan nama tabel yang sesuai.

Menggunakan tampilan untuk membatasi akses pengguna

Cara lain untuk membatasi akses pengguna ke data sensitif adalah dengan menggunakan tampilan. Tampilan adalah tabel virtual yang berisi data dari satu atau lebih tabel dalam database. Anda dapat menggunakan tampilan untuk membatasi akses pengguna ke kolom atau baris data tertentu dalam tabel.

Untuk membuat tampilan, gunakan perintah berikut:

Buat view view_name As SELECT COLUMN_NAME DARI TABLE_NAME WHERE kondisi;
1Buat view view_name As SELECT COLUMN_NAME DARI TABLE_NAME WHERE kondisi;

Mengganti view_name, nama kolom, table_name, Dan kondisi dengan nilai yang sesuai. Perintah ini membuat tampilan baru yang hanya mencakup kolom dan baris data yang ditentukan dari tabel asli.

Anda kemudian dapat memberi pengguna akses ke tampilan menggunakan hal yang sama MENGANUGERAHKAN Perintah seperti sebelumnya:

Hibah Pilih di database_name.view_name to 'username'@'localhost';
1Hibah Pilih di database_name.view_name to 'username'@'localhost';

Kesimpulan

Mengamankan Database MySQL Anda dengan izin pengguna terbatas adalah langkah penting dalam mencegah akses yang tidak sah dan melindungi data sensitif dari serangan injeksi SQL. Dengan hanya memberikan hak istimewa yang diperlukan kepada pengguna dan menggunakan tampilan untuk membatasi akses ke data sensitif, Anda dapat membantu menjaga keamanan database MySQL Anda. Penting juga untuk secara teratur memantau aktivitas yang mencurigakan dan memperbarui perangkat lunak MySQL Anda ke versi terbaru agar tetap terlindungi dari ancaman keamanan potensial.