PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysql Benutzerverwaltung



Goldfinger
28-11-2001, 00:00
Hallo zusammen,

nochmals meine Frage:

Ich möchte eine Mysql für verschiedene Benutzer zur Verfügung stellen.

Jeder soll das Recht haben Datenbanken anzulegen, aber keinen Zugriff auf die Datenbanken der anderen User haben.
Wenn ich die Rechte beschränke kann ich auch keine Datenbanken mehr anlegen.

Ich habe da in der Doc was gelesen das in diesem Falle mehrere Mysql Datenbanken installiert werden.
Sehe ich das richtig?
wie kann ich mehrere mysql nebeneinander installieren?

Sellew
28-11-2001, 07:49
Hallo,

nein das ist so nicht richtig, du musst keine mehreren mysql's laufen haben. die db legst du dann als root an. und dann kannst du wieder jedem nutzer rechte auf die neue db geben.

gruß.

Goldfinger
28-11-2001, 11:24
Danke für deine Antwort.

Das habe ich soweit hinbekommen.
Der User sollte aber das Recht haben eine eigene Datenbank anzulegen.
Dann hat er aber automatisch auch die Rechte z.b. auf die Mysql Datenbank mit der Userverwaltung. Das soll er nicht haben.

Die Provider bekommen das irgendwie hin.
Jetzt habe ich was gelesen das es irgenwie mit der my.cnf geht.?

Sellew
28-11-2001, 13:19
hi,

nein also provider vergeben für jeden user die datenbank und innerhalb dieser dürfen sie dann ihre tabellen anlegen.

stell dir vor kunde x hat die datenbank test. nun kommt kunde y und will auch test anlegen, dies geht nicht. du darfst nicht den unterschied zwischen datenbanken und tabellen verwechseln.

um es besser zu verdeutlichen:

mysql //Datenbankmanagementsystem
|
+--Datenbank1 //Datenbank eines users
| |
| +--Tabelle1 //Tabellen des users
| |
| +--Tabelle2
|
+--Datenbank2 //Datenbank eines anderen users
|
+--Tabelle1 //Tabellen des users
|
+--Tabelle2

also mysql verwaltet die DB's und du legst die DB's als admin an und sorgst dafür, das keine doppelten namen vergeben werden. Dann richtest du den User ein, der nur volle rechte für Datenbank1 hat. was er für tabellen anlegt, ist dir schnurz.
mysql verwaltet nur die DB's.

ich hoffe diese erklärung hilft dir mehr.

P.S.: Provider machen dies genauso.

gruß.

Goldfinger
28-11-2001, 14:09
Yob, soweit verstanden und so habe ich das auch gehabt.
die User können innerhalb ihrer Datenbank Tabellenanlegen.
Nur ist es z.b. nicht möglich phpnuke zu installieren weil er eine neue datenbank anglegt und dazu hat er keine Recht bzw darf er keine bekommen.

Es müßte also so sein das der User foo die Datenbank1 hat:

*Datenbank1 gehört user foo
Innerhalb dieser datenbank muß er eine datenbank nuke angelegen können.

das kann er nicht weil er nur tabellen anlegen kann.

Problem klar?

Freue mich auf eine Lösung...

Sellew
28-11-2001, 15:38
Problem klar.

Aber Problem iss, es gibt kein DB-System das eine Datenbank in ner Datenbank anlegen kann, denn wie soll das DB-System eine Datenbank in ner Datenbank verwalten??

kannst du nicht ne db anlegen und phpnuke sagen er soll diese nutzen und darf tabellen anlegen??

ansonsten müsstest du ihm ja root rechte geben, aber das willst du ja nicht.

ist phpnuke im source vorhanden?? dann kannste ihm ja beibringen, dass er nur tabellen in der Datenbank, die du ihm zugewiesen hast anlegen darf.

ansonsten gib mir mal den link, dann schau ich es mir heut abend mal an. auf arbeit habsch leider kein linux hier.

gruß.

netzmeister
28-11-2001, 16:08
Hallo,

prinzipiell müsste es möglich sein mehrere Mysql-Dämonen auf verschiedene Ports hören zu lassen. Eingerichtet habe ich das allerdings noch nie.

Ansonsten kann ich Sellew nur zustimmen. Wir Provider machen das so, wei er es beschreibt.

Du kannst ja verschiedene Grants anlegen. Eigentlich sollte das reichen.

Grüsse

Eicke

Goldfinger
28-11-2001, 16:16
Hello,

der Nuke ist nur ein Beispiel.
Das ist ja bei den meisten anwendungen so, daß die eine eigene datenbank anlegen möchten.
Gibts eine Möglichkeit die Mysql zu schützen, sprich die Userverwaltung?.
Wenn da nur z.b. root zugriff hätte, wäre schon geholfen.
Was die User untereinandermachen kann mir egal sein.