Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL:Bagaimana cara menghindari pengguna untuk melihat saya memiliki DB lain dan memberikan akses pilih ke satu tampilan pada satu DB?

Saya telah menemukan ikhtisar yang terkandung dalam artikel ini bahkan lebih bermanfaat daripada dokumentasi MySQL yang sebenarnya untuk menjelaskan gambaran besar tentang bagaimana hak istimewa MySQL diberikan atau ditolak.

Inti dari artikel ikhtisar adalah bahwa hak istimewa dikendalikan oleh serangkaian tabel izin yang semakin halus di mysql database:mysql.user , mysql.db , mysql.host , mysql.tables_priv , mysql.columns_priv , mysql.procs_priv . Aturan umumnya adalah bahwa nilai "Y" untuk hak istimewa dalam tabel yang lebih berbutir halus mengesampingkan nilai "N" dalam tabel yang lebih berbutir kasar. Jadi strategi yang disarankan adalah memulai dengan menolak sebagian besar hak istimewa di user table (yang memberikan kontrol paling kasar), lalu buat hanya penggantian spesifik yang Anda inginkan di tabel yang lebih halus.

Secara khusus, ada hak istimewa yang disebut SHOW_DATABASES yang ditentukan oleh Show_db_priv kolom di mysql.user meja; Anda ingin mengatur ini ke "N" untuk pengguna yang bersangkutan (dan seperti yang dijelaskan di atas, Anda mungkin ingin mengatur sebagian besar izin lain di tabel pengguna ke "N" juga) dan kemudian hanya memberikan hak istimewa yang pengguna sebenarnya perlu di mysql.db atau mysql.tables_priv tabel atau apa pun yang sesuai untuk kasus khusus Anda.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL sangat lambat di EC2

  2. Mensimulasikan grup penangkapan regex di mysql

  3. Penggeser Formulir HTML

  4. Kapitalisasi huruf pertama dari beberapa kata dari kolom tanpa CAP_FIRST

  5. API Kriteria Hibernasi:dapatkan n baris acak