Instruksi pemasangan singkat untuk WordPress ( "5 Menit" ) menyatakan bahwa:
Buat database untuk WordPress di server web Anda, serta pengguna MySQL yang memiliki semua hak istimewa untuk mengakses dan memodifikasinya.
Saat membuat blog baru secara profesional, saya bertanya-tanya bagaimana cara memetakan apa yang ditawarkan oleh konfigurasi hak akses / izin pengguna database MySQL:
- Data:
SELECT
,INSERT
,UPDATE
,DELETE
- Definisi:
CREATE
,ALTER
,DROP
- Tambahan:
INDEX
- Lebih:
LOCK TABLES
REFERENCES
CREATE TEMPORARY TABLES
CREATE VIEW
SHOW VIEW
CREATE ROUTINE
EXECUTE
ALTER ROUTINE
Saya cukup yakin untuk tiga grup pertama, saya menamainya Data, Definisi, dan Ekstra di sini. Tetapi bagaimana dengan yang lain di bawah entri More ? Biasanya saya akan mengatakan, itu tidak diperlukan, tetapi saya ingin mendapatkan pendapat kedua.
"Semua hak istimewa" biasanya berarti Anda harus memberikan segalanya kepada pengguna. Namun ...
Saya telah menemukan setidaknya satu artikel yang mengklaim bahwa pengguna MySQL hanya membutuhkan:
Menggali lebih dalam , saya menemukan bahwa untuk beroperasi sepenuhnya (pembaruan otomatis, instalasi / pencopotan plug-in, dll.), WordPress memerlukan beberapa izin tambahan:
Juga, tidak dirujuk tetapi masuk akal:
Tapi itu adalah dua referensi solid yang bisa saya temukan yang didukung oleh pendapat yang diposting di tempat lain. Saya masih mendorong Anda untuk tetap menggunakan GRANT ALL, tetapi jika Anda benar - benar harus membatasi penggunaan DB Anda, mulailah dengan 7 hak istimewa ini dan uji sepenuhnya untuk memastikan semuanya berjalan seperti yang diharapkan.
sumber
Inilah yang dikatakan Codex tentang membatasi hak pengguna basis data:
http://codex.wordpress.org/Hardening_WordPress
sumber
Mengenai "Catatan" di posting redburn, Wordpress Codex juga memiliki Peringatan Anda juga harus membaca tentang pembaruan dan perubahan skema database ...
(Sunting: Namun saya perhatikan bahwa saya TIDAK MELIHAT "GRANT" dalam daftar hak istimewa lagi ketika membuat atau memperbarui pengguna. Mungkin "CREATE" harus ditambahkan ke daftar? Apakah ada yang punya informasi mengenai ini? - menggunakan Hostgator cPanel , Maret 2016 -)
Codex: http://codex.wordpress.org/Hardening_WordPress
sumber
Pendapat saya sama dengan @EAMann di atas, serta sumber-sumber yang dia referensikan: GRANT ALL diperlukan untuk memastikan situs Anda berfungsi dan bukti di masa mendatang. Bahkan di lokasi produksi, Anda harus tetap menggunakan panduan pengguna.
Sebagai seseorang yang menyumbangkan kode ke inti WordPress dan beberapa plug-in, saya sarankan Anda mempertahankan hak DB default seperti yang disarankan dalam manual pengguna (GRANT ALL PRIVILEGES ON wpdatabasename. * TO "wordpressusername" @ "hostname").
Kode sumber WordPress (sekarang dan di masa depan) mengasumsikan bahwa pengguna DB WordPress memiliki semua hak istimewa DB untuk database WordPress yang diberikan. Jika pengaturan Anda kehilangan hak istimewa DB, Anda dapat mengalami masalah saat Anda meningkatkan WordPress dan menambahkan lebih banyak plug-in.
Jadi Anda benar-benar tidak boleh menggunakan hak istimewa DB berbeda dari hak istimewa DB default yang direkomendasikan oleh manual, kecuali jika Anda tahu apa yang Anda lakukan, memiliki kebutuhan yang sangat spesifik, dan tidak akan lupa Anda memiliki hak istimewa DB kustom.
Sejak itu halaman Codex telah diperbarui tentang cara melakukan ini dengan contoh-contoh pada berbagai sistem dan tangkapan layar. https://codex.wordpress.org/Installing_WordPress#Step_2:_Create_the_Database_and_a_User
Membuat nama dan pengguna Databse (via PHPMyAdmin): https://codex.wordpress.org/Installing_WordPress#Using_phpMyAdmin
Membuat nama dan pengguna Databse (melalui klien baris perintah MySQL): https://codex.wordpress.org/Installing_WordPress#Using_the_MySQL_Client
sumber