Anlegen einer neuen Datenbank durch User verhindern

MySQL, PostgreSQL, SQLite
ploch
Posts: 5
Joined: 2003-05-21 05:37
Location: Geithain

Anlegen einer neuen Datenbank durch User verhindern

Post by ploch » 2003-07-02 23:34

Hallo ,

jetzthabe ich hier schon ewig gelesen und studiert - scheinbar sehe ich den Wald vor lauter Bäumen nicht mehr. Ich nutze phpMyAdmin 2.5.1 und habe mir dort einen neuen Nutzer incl. eigener Datenbank angelegt, welches soweit erst einmal funktioniert.
Dieser Nutzer soll lediglich eine einzige ( ! ) Datenbank bekommen, mehr nicht. Hier soll er nach belieben eigene Tabellen anlegen können.

Frage:
Wenn sich der User an phpMyAdmin anmeldet, kann er im linken Frame trotzdem noch alle vorhandenen Datenbanken sehen ... obwohl er letztendlich keinen Zugriff darauf hat.
Kann ich das über die Rechte-Vergabe in phpMyAdmin steuern ? Ich habe eine ganze Weile getestet, aber bis jetzt noch nicht hinbekommen.

Eigene Tabellen soll er ja anlegen können - nur eben keine zusätzlichen Datenbanken. Setzte ich innerhalb der Datenbank-Rechte das CREATE-Recht, klappt's mit dem Anlegen der neuen Tabellen - allerdings bekommt er dann im rechten Frame die Möglich keit zu sehen, eine neuen Datenbank anzulegen ... was aber letztendlich nicht funktioniert. Nehme ich das CREATE Recht heraus, verschwindet die Möglichkeit, neuen Datenbanken anzulegen - allerdings auch die Möglichkeit, eigene tabellen anzulegen.

Hm ... oder soll ich Ihm als strike Vorgabe in config.inc.php bei $cfg['Servers'][$i]['only_db'] seinen Datenbanknamen vorschreiben ? Dann steht im linken Frame tatsächlich nur "seine" Datenbank - aber es erscheint im rechten Frame immer noch die Möglichkeit , eine eigene Datenbank anzulegen [ scheiter wie gesagt an "Access denied" ].
Kann ich dieses Feld ausblenden ?

Vielleicht sollte ich für heute auch ganz einfach Schluß machen ( 23:33 ) ... ???
Vielleicht kann mir mal jemand antworten ?
Danke !

Andreas Ploch

alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover

Re: Anlegen einer neuen Datenbank durch User verhindern

Post by alexander newald » 2003-07-03 00:44

Bei der Rechtevergabe für den Benutzer:

Code: Select all

GRANT SELECT,INSERT,UPDATE,CREATE,DROP,ALTER ON datenbank.* TO user@localhost IDENTIFIED BY 'passwort';
Dann sollte auch in der Ã?bersicht nur seine Datenbank auftauchen. Ausserdem kann er beliebig seine DB anlegen und löschen.