Tom: Auslesen ob ich DB anlegen darf?

Beitrag lesen

Hello,

SQL-Statement:

"show grants for $user";

in der SQL-Konsole:

show grants for "tschmieder"@"192.168.1.3";

ergibt z.B:

GRANT ALL PRIVILEGES ON *.* TO 'tschmieder'@'192.168.1.3' IDENTIFIED BY   PASSWORD '535fb75e787a8227' WITH GRANT OPTION

----------
oder

show grants for "contenido"@"localhost";

ergibt:

GRANT USAGE ON *.* TO 'contenido'@'localhost' IDENTIFIED BY PASSWORD '012081115c2d71e3'
  GRANT ALL PRIVILEGES ON contenido.* TO 'contenido'@'localhost' WITH GRANT OPTION

Das sind dann tatsächlich zwei Einträge, da ich die Rechte des Users 'contenido@localhost'
auf die Verwendung der entsprechenden DB eingeschränkt habe.

Nun musst Du diesen GRANT-String erst interpretieren.

Wenn Du direkten Lesezugriff auf die mysql-Datenbank hast, kannst Du natürlich auch SELECTs auf die Tabellen absetzen, musst die Rechte dann aber trotzdem nach dem mysSQL-eigenen Algorithmus "berechnen". Es reicht also nicht, nur eine einzelne Tabelle (user) zu befragen.

siehe auch:
http://dev.mysql.com/doc/mysql/en/GRANT.html

Rechtesystem:
http://dev.mysql.com/doc/mysql/de/Privileges.html, zum Einlesen auf Deutsch
http://dev.mysql.com/doc/mysql/en/Privileges.html, und dann besser auch hier gucken!

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau