MySQL: Welche Rechte für "Subadmin"
Tom
- datenbank
Hello,
MySQL 3.23.55-max
mehrere Datenbanken
der "Eigentümer" einer Datenbank soll in die Lage versetzt werden, User für seine DB anzulegen und zu verwalten, aber NUR für seine. Er soll auch nicht Andere User und deren Rechte abfragen können und schon gar nicht ändern.
Geht das mit deser Version und wo müssen welche Rechte eingestellt werden. Theoretisch ist alles ganz nett, aber in der Praxis kommen dann immer andere Fehlermeldungen bezüglich fehlender Rechte für den Subadmin.
Liebe Grüße aus http://www.braunschweig.de
Tom
yo,
der "Eigentümer" einer Datenbank soll in die Lage versetzt werden, User für seine DB anzulegen und zu verwalten, aber NUR für seine.
ich bin mir unter mysql da so nicht sicher. aber grundsätzlich sollte das nicht gehen, da jeder benutzer zugang zum server braucht, bevor er zugang zu der datenbank hat. und solche konten auf serverebene einrichten kann man als database-owner meiner meinung nach nicht.
er sollte aber in der lage sein, alle administrativen arbeiten bezogen auf seine datenbank vorzunehmen und nicht in der lage sein, rechte auf andere datenbanken zu geben.
Ilja
Hello,
nun haben wir ziemlich lange gebastelt heute, sind aber nicht so optimal zufrieden mit dem Ergebnis.
Es gibt praktisch nur die Möglichkeit, dem "Subadmin" die globalen Rechte GRANT und RELOAD zu geben, sowie auf die MySQL-DB die globalen Rechte
INSERT und UPDATE sowie auf seine DB alle Rechte, die er für seine DB haben soll und weitergeben kann.
Betroffen sind dann die Tabellen
mysql.user
----------
Insert_priv = 'Y'
Update_priv = 'Y'
Grant_priv = 'Y'
Reload_priv = 'Y'
mysql.db
----------
Db = 'mysql'
User = '$user'
Insert_priv = 'Y'
Update_priv = 'Y'
Db = '$userDB'
User = '$user'
... = 'Y'
... = 'Y' alle Rechte, die er haben soll
... = 'Y'
Uns stört daran besonders, dass der Subadmin sich so keinen Überblick über die von ihm angelegten User seiner DB verschaffen kann. Dazu müsste man ihm auch Select-Rechte auf die mysql-DB geben und dann kann er auch alle User der anderen DBs sehen. Das ist nicht erwünscht.
Es wären also in den DBs die Felder "OWNER" notwendig, sowie ein Filter auf Datensätze. Beides ist im MySQL-Standard nicht enthalten.
Hat da vielleicht jemand eine Idee, wie man es intelligenter lösen könnte?
Liebe Grüße aus http://www.braunschweig.de
Tom