php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.07.2011, 13:41  
Erfahrener Benutzer
 
Benutzerbild von DJ_RhoxxZ
 
Registriert seit: 07.03.2010
Beiträge: 181
PHP-Kenntnisse:
Anfänger
DJ_RhoxxZ ist in Verruf geratenDJ_RhoxxZ ist in Verruf geraten
DJ_RhoxxZ eine Nachricht über ICQ schicken DJ_RhoxxZ eine Nachricht über MSN schicken
Standard Passwort wird nicht akzeptiert

Hallo,

ich habe folgendes Problem:

Lege ich einen neuen MySQL-Account an, der nicht "root" und nicht "test" heißt, kann ich mich nicht mehr unter dem Namen einloggen.

Beispiel:

Username: sharetube
Passwort: roflICHbincool123
Zitat:
CREATE USER 'sharetube'@'%' IDENTIFIED BY 'roflICHbincool123';

GRANT ALL PRIVILEGES ON * . * TO 'sharetube'@'%' IDENTIFIED BY 'roflICHbincool123' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

CREATE DATABASE IF NOT EXISTS `sharetube` ;

GRANT ALL PRIVILEGES ON `sharetube` . * TO 'sharetube'@'%';
Also mal probieren ob ich hinein komme:

Zitat:
function db_connect()
{
mysql_connect("localhost", "sharetube", "roflICHbincool123") or die(mysql_error());
mysql_select_db("sharetube") or die(mysql_error());
}
Und das kommt dabei 'raus:

Zitat:
Access denied for user 'sharetube'@'localhost' (using password: YES)
Warum ist das so und wie kann ich dieses Problem beheben?
__________________
webmasterlounge
Die deutsche Webmaster-Community
DJ_RhoxxZ ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.07.2011, 14:01  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.628
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

'sharetube'@'%'
'sharetube'@'localhost'

!=
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist gerade online   Mit Zitat antworten
Alt 14.07.2011, 02:21  
Erfahrener Benutzer
 
Registriert seit: 13.05.2011
Beiträge: 188
PHP-Kenntnisse:
Fortgeschritten
php1704 wird schon bald berühmt werden
Standard

Zitat:
It is necessary to have both accounts for monty to be able to connect from anywhere as monty. Without the localhost account, the anonymous-user account for localhost that is created by mysql_install_db would take precedence when monty connects from the local host. As a result, monty would be treated as an anonymous user. The reason for this is that the anonymous-user account has a more specific Host column value than the 'monty'@'%' account and thus comes earlier in the user table sort order.
http://dev.mysql.com/doc/refman/5.1/...ing-users.html

Das % steht da ja eigentlich für "Any Host". Etwas seltsam implementiert das Ganze.

Grüße.
php1704 ist offline   Mit Zitat antworten
Alt 14.07.2011, 08:26  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

nö - ist im Grunde so ähnlich wie CSS .. die Regel mit der höchsten Spezifität wird benutzt
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 15.07.2011, 01:45  
Erfahrener Benutzer
 
Registriert seit: 13.05.2011
Beiträge: 188
PHP-Kenntnisse:
Fortgeschritten
php1704 wird schon bald berühmt werden
Standard

Und warum soll der Hostname eine höhere Priorität haben als der Username?

Grüße.
php1704 ist offline   Mit Zitat antworten
Alt 15.07.2011, 07:57  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

Rule wa Rule da-yo .. (gebrochenes Japanesisch) ...

so sind nun mal die Regeln, du hast den Handbuchabschnitt doch gelesen- der spezielle Hostname ist wichtiger als der allgemeine Hostname

ist halt genau wie bei CSS - die allgemeine Regel wird von der Regel mit der höheren Spezifität überschrieben

umgekehrt wäre doch viel Schlimmer ...

du sagst User X darf über Localhost mit Passwort 123 - wenn er aber übers "allgemeine" internet kommt, dann gilt Passtwort "hsiodfhoaisfc389021"

User x kommt also von Localhost - und die Datenbank erwartet wegen DEINER AUSLEGUNG nun "hsiodfhoaisfc389021" als Passwort, weil du die Speziellle Festlegung zum Localhost mit deiner allgemeinen Regel überschrieben hättest .. das wäre wohl kaum im Sinne des Erfinders .. zumal die meisten Hoster den Zugriff nur von Localhost gestatten und von allen anderen Hosts verbieten .... soll diese allgemeine Regel jetzt auch den Connect von Localhost mit verbieten ?
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

Geändert von eagle275 (15.07.2011 um 08:01 Uhr).
eagle275 ist offline   Mit Zitat antworten
Alt 15.07.2011, 10:01  
Erfahrener Benutzer
 
Registriert seit: 13.05.2011
Beiträge: 188
PHP-Kenntnisse:
Fortgeschritten
php1704 wird schon bald berühmt werden
Standard

Gegeben seien folgende Zugänge:

anonym@localhost
userX@%

nun wird versucht sich mit userX@localhost anzumelden.

Und nun nimmt mysql den anonym@localhost, weil der Host localhost spezieller als % ist? Der User wird in dem Fall gar nicht ausgewertet? Das mag nun zwar die Regel sein, aber meiner Meinung ist das eben seltsam und unlogisch implementiert.

Grüße.
php1704 ist offline   Mit Zitat antworten
Alt 15.07.2011, 10:43  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

der guckt halt ZUERST auf den Host - danach würden dann bei gleichrangiger HostRegel die User betrachtet - ist aber logisch so, wenn du auf den 2ten Teil meiner Erklärung guckst ..

du verbietest auf '%' jegliche Verbindung, weil du Provider / Hoster bist und willst, dass nur die bei dir gehosteten Webseiten auf die Datenbank zugreifen

Jeder gehostete bekommt von dir einen Zugang per @'localhost' und nach deiner Argumentation würde dann die Allgemeine Verbotsregel IMMER gelten, auch bei den Localhost Verbindungen. Das ist doch gerade der Grund mit "speziellere Regel überschreibt Allgemeine Regel" auch wenn du gern hättest, dass er zuerst auf den User guckt - aber dann müsstest du dem Provider/Hoster auferlegen für JEDEN user eine eigene Verbotsregel zu erstellen - so reicht eine einzige
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 15.07.2011, 10:59  
Erfahrener Benutzer
 
Registriert seit: 13.05.2011
Beiträge: 188
PHP-Kenntnisse:
Fortgeschritten
php1704 wird schon bald berühmt werden
Standard

Ich glaube du bringst da etwas durcheinander. Das sind User-Accounts mit ihren jeweiligen Berechtigungen. Und nicht irgendwelche Regeln.

Versuch mal dein Beispiel anzulegen. Ein beliebiger User von Any-Host der sich nicht verbinden darf...

Wenn du nur Verbindungen von localhost zulassen willst dann lässt du mysql an keiner externen IP "lauschen".

Grüße.
php1704 ist offline   Mit Zitat antworten
Alt 15.07.2011, 11:35  
Erfahrener Benutzer
 
Registriert seit: 24.10.2008
Beiträge: 298
PHP-Kenntnisse:
Fortgeschritten
KarlEgon befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Gegeben seien folgende Zugänge:

anonym@localhost
userX@%

nun wird versucht sich mit userX@localhost anzumelden.

Und nun nimmt mysql den anonym@localhost, weil der Host localhost spezieller als % ist?
Nein er nimmt nicht den anonym, allerdings kann man sich nicht als userX@localhost einloggen, dass gibt eine Fehlermeldung!
KarlEgon ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Passwort aus Login weiterhin nutzen mhdd PHP Tipps 2010 3 16.05.2010 17:08
Passwort vergessen MD5 darkicenetwork PHP Tipps 2010 12 25.03.2010 16:33
[Erledigt] Passwort verstecken... Request: mal gehts, mal nicht defcut JavaScript, Ajax und mehr 21 04.03.2010 00:19
passwort vergleich funktioniert leider nicht coyboc PHP Tipps 2010 10 11.02.2010 17:32
Einfaches Passwort vergessen Script sakanoue PHP Tipps 2009 7 23.12.2009 14:22
Passwort versenden pixtr-2009 PHP Tipps 2009 1 10.11.2009 09:25
Passwort vergessen Funktion Gravenstein PHP Tipps 2009 17 18.08.2009 09:43
bildanzeige bei falschem passwort chrissie PHP Tipps 2006 1 22.08.2006 15:37
Eingabefenster für Passwort Nevermind PHP Tipps 2007 10 18.12.2005 15:36
[Erledigt] Passwort und Nutzerverwaltung in Php und Mysql PHP Tipps 2005-2 7 23.06.2005 17:46
3 Seiten durch Passwort schützen mit einmaliger PW-Eingabe? PHP Tipps 2005 12 19.04.2005 22:41
Passwort geschützte Seite - PHP ohne MySQL PHP Tipps 2004-2 3 29.12.2004 18:26
[Erledigt] Passwort vergessen-Script PHP Tipps 2004-2 8 11.11.2004 18:56
Passwort übergeben duerov PHP Tipps 2004 5 27.09.2004 09:41
benutzername + passwort pruefen PHP Tipps 2004 4 07.07.2004 16:14


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:57 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum