Kapitel 5: MySQL-Datenbankadministration 191
• Die grant-Berechtigung erlaubt Benutzern, Ihre Berechtigungen an andere Benutzer zu
¨ubertragen. Zwei Benutzer mit unterschiedlichen Berechtigungen und mit der grant-
Berechtigung sind in der Lage, Ihre Berechtigungen zu kombinieren.
• Die alter-Berechtigung kann benutzt werden, um das Berechtigungssystem zu unter-
laufen, indem Tabellen umbenannt werden.
• Die file-Berechtigung kann missbraucht werden, um jede ¨offentlich lesbare Datei auf
dem Server in eine Datenbanktabelle einzulesen, auf deren Inhalte dann mit SELECT
zugegriffen werden kann. Das beinhaltet die Inhalte aller Datenbanken, die vom Server
gehostet werden!
• Die shutdown-Berechtigung kann missbraucht werden, um andere Benutzer komplett
vom Server auszuschließen, indem der Server beendet wird.
• Die process-Berechtigung kann benutzt werden, um den Klartext von momentan
ablaufenden Anfragen einzusehen, inklusive Anfragen, die Passw¨orter setzen oder
¨andern.
• Zugriffsrechte auf die mysql-Datenbank k¨onnen benutzt werden, um Passw¨orter zu
¨andern und auf sonstige Berechtigungsinformationen zuzugreifen. (Passw¨orter werden
verschl¨usselt gespeichert, daher kann ein b¨oswilliger Benutzer sie nicht einfach lesen
und anschließend die Klartext-Passw¨orter kennen.) Wenn man auf die mysql.user-
Passwort-Spalte zugreifen kann, kann man das nutzen, um sich als beliebiger Benutzer
am MySQL-Server anzumelden. (Mit ausreichenden Rechten kann derselbe Benutzer
dann Passw¨orter durch eigene ersetzen.)
Es gibt einige Dinge, die Sie mit dem MySQL-Berechtigungssystem nicht tun k¨onnen:
• Sie k¨onnen nicht ausdr¨ucklich festlegen, dass ein bestimmter Benutzer keinen Zugriff
haben soll. Das heißt, Sie k¨onnen nicht explizit mit einem bestimmten Benutzer ver-
gleichen und dann die Verbindung ablehnen.
• Sie k¨onnen nicht festlegen, dass ein Benutzer das Recht hat, Tabellen in einer Daten-
bank zu erzeugen oder zu l¨oschen, aber nicht die Datenbank selbst zu erzeugen oder
zu l¨oschen.
5.2.7 Verbinden mit dem MySQL-Server
MySQL-Client-Programme erfordern im Allgemeinen, dass Sie Verbindungsparameter fes-
tlegen, wenn Sie sich mit einem MySQL-Server verbinden wollen: Der Host, mit dem Sie
sich verbinden wollen, Ihr Benutzername und Ihr Passwort. Beispielsweise kann der mysql-
Client wie folgt gestartet werden (optionale Argumente sind in ‘[’ und ‘]’ eingeschlossen):
shell> mysql [-h hostname] [-u benutzername] [-pihr_passwort]
Alternative Formen der -h-, -u- und -p-Optionen sind --host=hostname, --
user=benutzername und --password=ihr_passwort. Beachten Sie, dass zwischen -p
oder --password= und dem folgenden Passwort kein Leerzeichen steht!
ACHTUNG: Ein Passwort auf der Kommandozeile anzugeben ist nicht sicher! Jeder Be-
nutzer auf Ihrem System kann dann Ihr Passwort herausfinden, indem er einen Befehl wie
ps auxww eingibt. Siehe Abschnitt 5.1.2 [Option files], Seite 175.
mysql benutzt Vorgabewerte f¨ur Verbindungsparameter, die auf der Kommandozeile nicht
angegeben sind:
Comentarios a estos manuales