Pengelolaan Hak Akses Pengguna Database
Pengelolaan Hak Akses Pengguna Database – Pada kesempatan ini kita akan membahas tentang pengelolaan user dan hak akses (Managing Users and Privileges) pada database mysql/mariadb. Sebagaimana kita ketahui database adalah sekumpulan beberapa data atau informasi yang tersimpan terstruktur sehingga sangat diperlukan untuk memanagednya dengan baik dan aman.
Pengelolaan Hak Akses Pengguna Database
Berikut beberapa informasi penting :
- Untuk username mysql database bisa mencapai 16 karakter dan sangat disarankan menggunakan nama yang tidak mudah ditebak demi keamanan,
- Username mysql database tidak sama dengan user untuk system operasi (berdiri sendiri),
- Jangan pernah menggunakan kata sandi atau password kosong untuk database. Kata sandi atau password anda harus menggunakan yang rumit dan berisi karakter alfanumerik serta karakter khusus (special characters).
- Setiap membuat user, kita perlu untuk grant permissions atau memberi izin/hak akses,
- Mysql menggunakan encryption scheme sendiri, Mysql mempunya PASSWORD() function dan hal yang sama digunakan encrypt password administrator mysql.
Pembuatan user baru :
MariaDB [(none)]> CREATE USER ‘database-username’@’localhost’ IDENTIFIED BY ‘database-password’;
GRANT Permissions atau pemberian hak akses :
MariaDB [(none)]> GRANT ALL ON database-name.* TO ‘database-username’@’localhost’ WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
Jenis grant permissions/izin pengguna :
ALL PRIVILEGES : Ini akan memungkinkan pengguna MySQL bisa mengakses semua database yang ada
CREATE : izin user akses untuk membuat table atau database baru
DROP : izin user untuk menghapus tabel atau database
DELETE : izin user untuk menghapus baris dari tabel
INSERT : izin user untuk memasukkan baris ke dalam tabel
SELECT :izin user untuk menggunakan perintah Select untuk membaca database
UPDATE : izin user untuk memperbarui/update baris pada table
GRANT OPTION : izin user untuk memberikan atau menghapus hak istimewa pengguna lain,
Pada contoh di atas kita membuat user database dengan nama database-username dengan password database-password dengan hak akses All (mendapatkan izin memproses semua action di atas) dan hanya dapat memproses database dengan nama database-name untuk semua table dan hanya bisa diakses dari localhost.
Note : Setiap pembuatan user hindari menggunakan ‘username’@’%’ untuk alasan keamanan
Membuat database :
MariaDB [(none)]> create database nama-database;
Menampilkna user database;
MariaDB [(none)]> select host, user, password from mysql.user;
Menghapus user database :
MariaDB [(none)]> DROP USER namauser@localhost;
Menghapus database :
MariaDB [(none)]> drop database nama-database;
Menampilkan database :
MariaDB [(none)]> show databases;
Menampilkan tables pada suatu database :
MariaDB [(none)]> use nama-database;
MariaDB [nama-database]> show tables;
REPAIR TABLE Method
[root@sgr24844]# mysqlcheck –repair –all-databases -u userdatabase -ppassword-database
Demikian tutorial singkat ini dan semoga bermanfaat untuk pembacanya.