Introduction
MySQL merupakan sistem manajemen basi data relational Open Source yang paling populer. Dan MySQL sendiri memungkinkan kita untuk
membuat banyak akun pengguna untuk memberikan hak istimewa yang sesuai sehingga pengguna dapat mengakses dan mengelola basis data tsb, itulah yang saya lakukan 6 bulan belakangan ini heheh, dan saya akan sedikit share tentang bagaimana cara Konfigurasi Hak Akses User di
MySQL.
Untuk membuat user MySQL sendiri sebenarnya cukup mudah dengan menjalankan satu perintah saja, tapi perlu digaris bawahi adalah
membut user MySQL harus memperhatikan faktor keamanan, terutama meliputi kebijakan kita sebagai adminsitrator memilih password yang kuat
dan senantiasa memriksa hak akses di setiap user yang ada di MySQL.
Dan pada hakikatnya 1 user 1 Database.
Prepare
Sebelum membahas artikel
ini, pastikan anda sudah menginstall server MySQL atau Maria DB di sistem anda, dan jika belum bisa mengikuti
tutorial dibawah ini :
- Siapkan MySQL server anda Cara Install MySQL di Ubuntu
- Pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Cara Konfigurasi Hak Akses User di MySQL
Step 1 – Create Account / User
Log in ke MySQL dan masuk sebagai root:
$ sudo mysql -u root -p
Create user terlebih dahulu sebelum memberikan akses privileges
CREATE USER 'nama user'@'%' IDENTIFIED BY 'password';
Step 2 – Berikan Hak Akses ke user
Berikan hak akses / privileges ke user pengguna MySQL anda, ada beberapa jenis hak istimewa yang dapat diberikan
ke user, anda dapat menemukan daftar lengkapnya yang
didukun MySQL di sini.
Privileges yang paling umum digunakan adalah:
ALL PRIVILEGES
-> Memberikan semua hak istimewa ke userCREATE
-> User di izinkan untuk create DB dan tabelDROP
-> User pengguna di izinkan untuk delete DB dan tabelDELETE
-> User pengguna di izinkan untuk delete baris dan tabel tertentuINSERT
-> User pengguna di izinkan untuk input baris ke tabel tertentuSELECT
-> User pengguna di izinkan untuk Read DatabaseUPDATE
-> User pengguna di izinkan untuk update baris tabel
Berikut beberapa contohnya :
Allowed semua privileges ke user pengguna untuk DB tertentu :
GRANT ALL PRIVILEGES ON nama_database.* TO 'user_database'@'%';
Allowed semua privileges ke user untuk semua DB :
GRANT ALL PRIVILEGES ON *.* TO 'user_database'@'%';
Allowed semua privileges ke user untuk tabel tertentu dari DB :
GRANT ALL PRIVILEGES ON nama_database.nama_tabel TO 'user_database'@'%';
Allowed beberapa privileges untuk user dan dengan DB tertentu :
GRANT SELECT, INSERT, DELETE ON nama_database.* TO user_database@'%';
Step 3 – Show grants user
Untuk melakukan pengecekan privileges user yang diberikan/yang kita buat
tadi maka gunakan
syntax SHOW GRANTS
:
SHOW GRANTS FOR 'user_database'@'%';
+---------------------------------------------------------------------------+ | Grants for database_user@localhost | +---------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'database_user'@'%' | | GRANT ALL PRIVILEGES ON `database_name`.* TO 'database_user'@'%' | +---------------------------------------------------------------------------+ 2 rows in set [0.00 sec]
Step 4 – Revoke Privileges
Syntax untuk me Revoke privileges , misalnya untuk revoke privileges user dari DB tertentu :
REVOKE ALL PRIVILEGES ON nama_database.* TO 'user_database'@'%';
Delete User MySQL
DROP USER 'user_database'@'%';
Artikel atau tutorial ini mencakup hal – hal dasar untuk management DB MySQL dan juga menjadi awal yang baik untuk belajar membuat user di MySQL dan memberikan Privileges.
Finish, Thanks a lot sudah berkunjung dan juga jangan lupa kritik & saranya, jika berkenan.
Admin website igunawan.com, Network Engineer, System Administrator.