Zugriff auf MySQL von PHP ohne Kennwort oder Passwort
Irgendwo habe ich das schon mal gelesen...
Da ich gerade eine Testumgebung baue, in der der Zugriff auf MySQL erforderlich ist, ich aber nicht ständig Kennwörter jonglieren will, erinnerte ich mich an die Möglichkeit, das Ganze auch ohne zu realisieren.
Leider habe ich das irgendwo mal gemarkert, aber finde es nicht mehr.
root-Zugriff ist selbstverständlich verfügbar.
Ich glaube, das war was mit einer .cnf-Datei, aber egal wie sehr ich google, ich finde anscheinend nicht den richtigen Suchstring
Danke
Lonesome Walker
Leider habe ich das irgendwo mal gemarkert, aber finde es nicht mehr.
root-Zugriff ist selbstverständlich verfügbar.
Ich glaube, das war was mit einer .cnf-Datei, aber egal wie sehr ich google, ich finde anscheinend nicht den richtigen Suchstring
Danke
Lonesome Walker
7 Antworten
- LÖSUNG dog schreibt am 01.11.2011 um 16:15:14 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 16:26:14 Uhr
- LÖSUNG dog schreibt am 01.11.2011 um 16:29:53 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 17:39:52 Uhr
- LÖSUNG dog schreibt am 01.11.2011 um 20:33:23 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 20:43:30 Uhr
- LÖSUNG 16568 schreibt am 26.04.2012 um 22:01:53 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 20:43:30 Uhr
- LÖSUNG dog schreibt am 01.11.2011 um 20:33:23 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 17:39:52 Uhr
- LÖSUNG dog schreibt am 01.11.2011 um 16:29:53 Uhr
- LÖSUNG 16568 schreibt am 01.11.2011 um 16:26:14 Uhr
LÖSUNG 01.11.2011 um 16:15 Uhr
Was willst du jetzt?
Einen MySQL-Benutzer ohne Passwort anlegen?
In PHP das Standard-Passwort vorgeben?
http://www.php.net/manual/de/mysql.configuration.php
Im C-Client das Standard-Passwort vorgeben?
Einen MySQL-Benutzer ohne Passwort anlegen?
CREATE USER 'hans'@'localhost'
http://www.php.net/manual/de/mysql.configuration.php
Im C-Client das Standard-Passwort vorgeben?
[client]
user=hans
password=bernd
LÖSUNG 01.11.2011 um 16:26 Uhr
LÖSUNG 01.11.2011 um 16:29 Uhr
LÖSUNG 01.11.2011 um 17:39 Uhr
LÖSUNG 01.11.2011 um 20:33 Uhr
Ich würde sagen gar nicht, weil PHP dann seine eigenen Default-Werte einsetzt, wenn du das Feld leer lässt.
static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
{
[...]
if (!passwd) {
passwd = MySG(default_password); //holt mysql.default_password aus php.ini
passwd_len = passwd? strlen(passwd):0;
}
LÖSUNG 01.11.2011 um 20:43 Uhr
LÖSUNG 26.04.2012 um 22:01 Uhr
Tja, das mit .cnf war schon der richtige Weg 
Man braucht nur im Home-Verzeichnis des jeweiligen Users eine .my.cnf anzulegen, und da drin steht dann:
(oder so ähnlich :-P)
Wichtig ist jedoch, daß das jeweilige Home-Verzeichnis lesegeschützt vor den anderen Usern ist, läßt sich bei Shared Hosting im Eigenbau prima realisieren, und wenn PHP als CGI läuft, dann klappts auch mit den kennwortlosen Verbinden
Lonesome Walker
Man braucht nur im Home-Verzeichnis des jeweiligen Users eine .my.cnf anzulegen, und da drin steht dann:
[client]
user=username
password=password
socket=/var/lib/mysql.sock
Wichtig ist jedoch, daß das jeweilige Home-Verzeichnis lesegeschützt vor den anderen Usern ist, läßt sich bei Shared Hosting im Eigenbau prima realisieren, und wenn PHP als CGI läuft, dann klappts auch mit den kennwortlosen Verbinden
Lonesome Walker