Di perusahaan tempat saya bekerja, insinyur insinyur (saat ini hanya 2 anggota, yang adalah saya dan rekan kerja lainnya) adalah satu-satunya orang yang memiliki akses ke database produksi.
Jadi ketika ada pengembang lain perlu menjalankan query MySQL pada database produksi. Mereka akan mengirimkan pertanyaan ke 2 insinyur untuk membiarkan mereka mengeksekusinya.
Berikut adalah situasi ketika kita perlu menjalankan perintah ke database produksi:
Basis data berisi data yang rusak, yang menghasilkan bug. Mereka menjalankan perintah untuk memperbaiki bug.
Bug dilaporkan. Dan mereka ingin melihat nilai saat ini di dalam database.
Salah satu pelanggan kami ingin memodifikasi datanya. Tetapi aplikasi web kami tidak memiliki kemampuan untuk melakukan modifikasi. Jadi kita harus mengirim perintah MySQL langsung ke database untuk melengkapi kebutuhan pelanggan.
Tim QA membuat akun uji pada lingkungan produksi. Dan mereka ingin mengubah status akun sehingga mereka dapat melakukan tes lain.
Ini menciptakan banyak gangguan bagi saya rekan kerja lainnya. Ketika kami mengembangkan program di siang hari, kami sering harus beralih konteks hanya untuk menjalankan beberapa permintaan.
Saya tidak berpikir ini adalah arsitektur yang baik untuk perusahaan. Bagaimana Anda mengontrol izin untuk lingkungan produksi di perusahaan Anda?
Basis data produksi kami terdiri dari informasi pelanggan yang sensitif. Jika data bocor, perusahaan kami mungkin didenda jutaan dolar.
how do I get devs to stop bugging me to run arbitrary SQL commands
. Saya pikir saya bisa menggunakan ProxySQL untuk menutupi data pelanggan yang sensitif sehingga pengembang lain dapat membaca basis data produksi.